
kernel.bin:     file format elf32-i386


Disassembly of section .text:

00001000 <_start>:
    1000:	bc 40 42 01 00       	mov    $0x14240,%esp
    1005:	c7 05 68 ed 04 00 00 	movl   $0x0,0x4ed68
    100c:	00 00 00 
    100f:	0f 01 05 d4 01 05 00 	sgdtl  0x501d4
    1016:	e8 79 04 00 00       	call   1494 <cstart>
    101b:	0f 01 15 d4 01 05 00 	lgdtl  0x501d4
    1022:	0f 01 1d 64 4b 01 00 	lidtl  0x14b64
    1029:	ea 30 10 00 00 08 00 	ljmp   $0x8,$0x1030

00001030 <csinit>:
    1030:	31 c0                	xor    %eax,%eax
    1032:	66 b8 20 00          	mov    $0x20,%ax
    1036:	0f 00 d8             	ltr    %ax
    1039:	e9 da 04 00 00       	jmp    1518 <kernel_main>
    103e:	90                   	nop
    103f:	90                   	nop

00001040 <hwint00>:
    1040:	e8 c6 03 00 00       	call   140b <save>
    1045:	e4 21                	in     $0x21,%al
    1047:	0c 01                	or     $0x1,%al
    1049:	e6 21                	out    %al,$0x21
    104b:	b0 20                	mov    $0x20,%al
    104d:	e6 20                	out    %al,$0x20
    104f:	fb                   	sti    
    1050:	68 00 00 00 00       	push   $0x0
    1055:	ff 15 80 0c 05 00    	call   *0x50c80
    105b:	59                   	pop    %ecx
    105c:	fa                   	cli    
    105d:	e4 21                	in     $0x21,%al
    105f:	24 fe                	and    $0xfe,%al
    1061:	e6 21                	out    %al,$0x21
    1063:	c3                   	ret    
    1064:	90                   	nop
    1065:	90                   	nop
    1066:	90                   	nop
    1067:	90                   	nop
    1068:	90                   	nop
    1069:	90                   	nop
    106a:	90                   	nop
    106b:	90                   	nop
    106c:	90                   	nop
    106d:	90                   	nop
    106e:	90                   	nop
    106f:	90                   	nop

00001070 <hwint01>:
    1070:	e8 96 03 00 00       	call   140b <save>
    1075:	e4 21                	in     $0x21,%al
    1077:	0c 02                	or     $0x2,%al
    1079:	e6 21                	out    %al,$0x21
    107b:	b0 20                	mov    $0x20,%al
    107d:	e6 20                	out    %al,$0x20
    107f:	fb                   	sti    
    1080:	68 01 00 00 00       	push   $0x1
    1085:	ff 15 84 0c 05 00    	call   *0x50c84
    108b:	59                   	pop    %ecx
    108c:	fa                   	cli    
    108d:	e4 21                	in     $0x21,%al
    108f:	24 fd                	and    $0xfd,%al
    1091:	e6 21                	out    %al,$0x21
    1093:	c3                   	ret    
    1094:	90                   	nop
    1095:	90                   	nop
    1096:	90                   	nop
    1097:	90                   	nop
    1098:	90                   	nop
    1099:	90                   	nop
    109a:	90                   	nop
    109b:	90                   	nop
    109c:	90                   	nop
    109d:	90                   	nop
    109e:	90                   	nop
    109f:	90                   	nop

000010a0 <hwint02>:
    10a0:	e8 66 03 00 00       	call   140b <save>
    10a5:	e4 21                	in     $0x21,%al
    10a7:	0c 04                	or     $0x4,%al
    10a9:	e6 21                	out    %al,$0x21
    10ab:	b0 20                	mov    $0x20,%al
    10ad:	e6 20                	out    %al,$0x20
    10af:	fb                   	sti    
    10b0:	68 02 00 00 00       	push   $0x2
    10b5:	ff 15 88 0c 05 00    	call   *0x50c88
    10bb:	59                   	pop    %ecx
    10bc:	fa                   	cli    
    10bd:	e4 21                	in     $0x21,%al
    10bf:	24 fb                	and    $0xfb,%al
    10c1:	e6 21                	out    %al,$0x21
    10c3:	c3                   	ret    
    10c4:	90                   	nop
    10c5:	90                   	nop
    10c6:	90                   	nop
    10c7:	90                   	nop
    10c8:	90                   	nop
    10c9:	90                   	nop
    10ca:	90                   	nop
    10cb:	90                   	nop
    10cc:	90                   	nop
    10cd:	90                   	nop
    10ce:	90                   	nop
    10cf:	90                   	nop

000010d0 <hwint03>:
    10d0:	e8 36 03 00 00       	call   140b <save>
    10d5:	e4 21                	in     $0x21,%al
    10d7:	0c 08                	or     $0x8,%al
    10d9:	e6 21                	out    %al,$0x21
    10db:	b0 20                	mov    $0x20,%al
    10dd:	e6 20                	out    %al,$0x20
    10df:	fb                   	sti    
    10e0:	68 03 00 00 00       	push   $0x3
    10e5:	ff 15 8c 0c 05 00    	call   *0x50c8c
    10eb:	59                   	pop    %ecx
    10ec:	fa                   	cli    
    10ed:	e4 21                	in     $0x21,%al
    10ef:	24 f7                	and    $0xf7,%al
    10f1:	e6 21                	out    %al,$0x21
    10f3:	c3                   	ret    
    10f4:	90                   	nop
    10f5:	90                   	nop
    10f6:	90                   	nop
    10f7:	90                   	nop
    10f8:	90                   	nop
    10f9:	90                   	nop
    10fa:	90                   	nop
    10fb:	90                   	nop
    10fc:	90                   	nop
    10fd:	90                   	nop
    10fe:	90                   	nop
    10ff:	90                   	nop

00001100 <hwint04>:
    1100:	e8 06 03 00 00       	call   140b <save>
    1105:	e4 21                	in     $0x21,%al
    1107:	0c 10                	or     $0x10,%al
    1109:	e6 21                	out    %al,$0x21
    110b:	b0 20                	mov    $0x20,%al
    110d:	e6 20                	out    %al,$0x20
    110f:	fb                   	sti    
    1110:	68 04 00 00 00       	push   $0x4
    1115:	ff 15 90 0c 05 00    	call   *0x50c90
    111b:	59                   	pop    %ecx
    111c:	fa                   	cli    
    111d:	e4 21                	in     $0x21,%al
    111f:	24 ef                	and    $0xef,%al
    1121:	e6 21                	out    %al,$0x21
    1123:	c3                   	ret    
    1124:	90                   	nop
    1125:	90                   	nop
    1126:	90                   	nop
    1127:	90                   	nop
    1128:	90                   	nop
    1129:	90                   	nop
    112a:	90                   	nop
    112b:	90                   	nop
    112c:	90                   	nop
    112d:	90                   	nop
    112e:	90                   	nop
    112f:	90                   	nop

00001130 <hwint05>:
    1130:	e8 d6 02 00 00       	call   140b <save>
    1135:	e4 21                	in     $0x21,%al
    1137:	0c 20                	or     $0x20,%al
    1139:	e6 21                	out    %al,$0x21
    113b:	b0 20                	mov    $0x20,%al
    113d:	e6 20                	out    %al,$0x20
    113f:	fb                   	sti    
    1140:	68 05 00 00 00       	push   $0x5
    1145:	ff 15 94 0c 05 00    	call   *0x50c94
    114b:	59                   	pop    %ecx
    114c:	fa                   	cli    
    114d:	e4 21                	in     $0x21,%al
    114f:	24 df                	and    $0xdf,%al
    1151:	e6 21                	out    %al,$0x21
    1153:	c3                   	ret    
    1154:	90                   	nop
    1155:	90                   	nop
    1156:	90                   	nop
    1157:	90                   	nop
    1158:	90                   	nop
    1159:	90                   	nop
    115a:	90                   	nop
    115b:	90                   	nop
    115c:	90                   	nop
    115d:	90                   	nop
    115e:	90                   	nop
    115f:	90                   	nop

00001160 <hwint06>:
    1160:	e8 a6 02 00 00       	call   140b <save>
    1165:	e4 21                	in     $0x21,%al
    1167:	0c 40                	or     $0x40,%al
    1169:	e6 21                	out    %al,$0x21
    116b:	b0 20                	mov    $0x20,%al
    116d:	e6 20                	out    %al,$0x20
    116f:	fb                   	sti    
    1170:	68 06 00 00 00       	push   $0x6
    1175:	ff 15 98 0c 05 00    	call   *0x50c98
    117b:	59                   	pop    %ecx
    117c:	fa                   	cli    
    117d:	e4 21                	in     $0x21,%al
    117f:	24 bf                	and    $0xbf,%al
    1181:	e6 21                	out    %al,$0x21
    1183:	c3                   	ret    
    1184:	90                   	nop
    1185:	90                   	nop
    1186:	90                   	nop
    1187:	90                   	nop
    1188:	90                   	nop
    1189:	90                   	nop
    118a:	90                   	nop
    118b:	90                   	nop
    118c:	90                   	nop
    118d:	90                   	nop
    118e:	90                   	nop
    118f:	90                   	nop

00001190 <hwint07>:
    1190:	e8 76 02 00 00       	call   140b <save>
    1195:	e4 21                	in     $0x21,%al
    1197:	0c 80                	or     $0x80,%al
    1199:	e6 21                	out    %al,$0x21
    119b:	b0 20                	mov    $0x20,%al
    119d:	e6 20                	out    %al,$0x20
    119f:	fb                   	sti    
    11a0:	68 07 00 00 00       	push   $0x7
    11a5:	ff 15 9c 0c 05 00    	call   *0x50c9c
    11ab:	59                   	pop    %ecx
    11ac:	fa                   	cli    
    11ad:	e4 21                	in     $0x21,%al
    11af:	24 7f                	and    $0x7f,%al
    11b1:	e6 21                	out    %al,$0x21
    11b3:	c3                   	ret    
    11b4:	90                   	nop
    11b5:	90                   	nop
    11b6:	90                   	nop
    11b7:	90                   	nop
    11b8:	90                   	nop
    11b9:	90                   	nop
    11ba:	90                   	nop
    11bb:	90                   	nop
    11bc:	90                   	nop
    11bd:	90                   	nop
    11be:	90                   	nop
    11bf:	90                   	nop

000011c0 <hwint08>:
    11c0:	e8 46 02 00 00       	call   140b <save>
    11c5:	e4 a1                	in     $0xa1,%al
    11c7:	0c 01                	or     $0x1,%al
    11c9:	e6 a1                	out    %al,$0xa1
    11cb:	b0 20                	mov    $0x20,%al
    11cd:	e6 20                	out    %al,$0x20
    11cf:	90                   	nop
    11d0:	e6 a0                	out    %al,$0xa0
    11d2:	fb                   	sti    
    11d3:	68 08 00 00 00       	push   $0x8
    11d8:	ff 15 a0 0c 05 00    	call   *0x50ca0
    11de:	59                   	pop    %ecx
    11df:	fa                   	cli    
    11e0:	e4 a1                	in     $0xa1,%al
    11e2:	24 fe                	and    $0xfe,%al
    11e4:	e6 a1                	out    %al,$0xa1
    11e6:	c3                   	ret    
    11e7:	90                   	nop
    11e8:	90                   	nop
    11e9:	90                   	nop
    11ea:	90                   	nop
    11eb:	90                   	nop
    11ec:	90                   	nop
    11ed:	90                   	nop
    11ee:	90                   	nop
    11ef:	90                   	nop

000011f0 <hwint09>:
    11f0:	e8 16 02 00 00       	call   140b <save>
    11f5:	e4 a1                	in     $0xa1,%al
    11f7:	0c 02                	or     $0x2,%al
    11f9:	e6 a1                	out    %al,$0xa1
    11fb:	b0 20                	mov    $0x20,%al
    11fd:	e6 20                	out    %al,$0x20
    11ff:	90                   	nop
    1200:	e6 a0                	out    %al,$0xa0
    1202:	fb                   	sti    
    1203:	68 09 00 00 00       	push   $0x9
    1208:	ff 15 a4 0c 05 00    	call   *0x50ca4
    120e:	59                   	pop    %ecx
    120f:	fa                   	cli    
    1210:	e4 a1                	in     $0xa1,%al
    1212:	24 fd                	and    $0xfd,%al
    1214:	e6 a1                	out    %al,$0xa1
    1216:	c3                   	ret    
    1217:	90                   	nop
    1218:	90                   	nop
    1219:	90                   	nop
    121a:	90                   	nop
    121b:	90                   	nop
    121c:	90                   	nop
    121d:	90                   	nop
    121e:	90                   	nop
    121f:	90                   	nop

00001220 <hwint10>:
    1220:	e8 e6 01 00 00       	call   140b <save>
    1225:	e4 a1                	in     $0xa1,%al
    1227:	0c 04                	or     $0x4,%al
    1229:	e6 a1                	out    %al,$0xa1
    122b:	b0 20                	mov    $0x20,%al
    122d:	e6 20                	out    %al,$0x20
    122f:	90                   	nop
    1230:	e6 a0                	out    %al,$0xa0
    1232:	fb                   	sti    
    1233:	68 0a 00 00 00       	push   $0xa
    1238:	ff 15 a8 0c 05 00    	call   *0x50ca8
    123e:	59                   	pop    %ecx
    123f:	fa                   	cli    
    1240:	e4 a1                	in     $0xa1,%al
    1242:	24 fb                	and    $0xfb,%al
    1244:	e6 a1                	out    %al,$0xa1
    1246:	c3                   	ret    
    1247:	90                   	nop
    1248:	90                   	nop
    1249:	90                   	nop
    124a:	90                   	nop
    124b:	90                   	nop
    124c:	90                   	nop
    124d:	90                   	nop
    124e:	90                   	nop
    124f:	90                   	nop

00001250 <hwint11>:
    1250:	e8 b6 01 00 00       	call   140b <save>
    1255:	e4 a1                	in     $0xa1,%al
    1257:	0c 08                	or     $0x8,%al
    1259:	e6 a1                	out    %al,$0xa1
    125b:	b0 20                	mov    $0x20,%al
    125d:	e6 20                	out    %al,$0x20
    125f:	90                   	nop
    1260:	e6 a0                	out    %al,$0xa0
    1262:	fb                   	sti    
    1263:	68 0b 00 00 00       	push   $0xb
    1268:	ff 15 ac 0c 05 00    	call   *0x50cac
    126e:	59                   	pop    %ecx
    126f:	fa                   	cli    
    1270:	e4 a1                	in     $0xa1,%al
    1272:	24 f7                	and    $0xf7,%al
    1274:	e6 a1                	out    %al,$0xa1
    1276:	c3                   	ret    
    1277:	90                   	nop
    1278:	90                   	nop
    1279:	90                   	nop
    127a:	90                   	nop
    127b:	90                   	nop
    127c:	90                   	nop
    127d:	90                   	nop
    127e:	90                   	nop
    127f:	90                   	nop

00001280 <hwint12>:
    1280:	e8 86 01 00 00       	call   140b <save>
    1285:	e4 a1                	in     $0xa1,%al
    1287:	0c 10                	or     $0x10,%al
    1289:	e6 a1                	out    %al,$0xa1
    128b:	b0 20                	mov    $0x20,%al
    128d:	e6 20                	out    %al,$0x20
    128f:	90                   	nop
    1290:	e6 a0                	out    %al,$0xa0
    1292:	fb                   	sti    
    1293:	68 0c 00 00 00       	push   $0xc
    1298:	ff 15 b0 0c 05 00    	call   *0x50cb0
    129e:	59                   	pop    %ecx
    129f:	fa                   	cli    
    12a0:	e4 a1                	in     $0xa1,%al
    12a2:	24 ef                	and    $0xef,%al
    12a4:	e6 a1                	out    %al,$0xa1
    12a6:	c3                   	ret    
    12a7:	90                   	nop
    12a8:	90                   	nop
    12a9:	90                   	nop
    12aa:	90                   	nop
    12ab:	90                   	nop
    12ac:	90                   	nop
    12ad:	90                   	nop
    12ae:	90                   	nop
    12af:	90                   	nop

000012b0 <hwint13>:
    12b0:	e8 56 01 00 00       	call   140b <save>
    12b5:	e4 a1                	in     $0xa1,%al
    12b7:	0c 20                	or     $0x20,%al
    12b9:	e6 a1                	out    %al,$0xa1
    12bb:	b0 20                	mov    $0x20,%al
    12bd:	e6 20                	out    %al,$0x20
    12bf:	90                   	nop
    12c0:	e6 a0                	out    %al,$0xa0
    12c2:	fb                   	sti    
    12c3:	68 0d 00 00 00       	push   $0xd
    12c8:	ff 15 b4 0c 05 00    	call   *0x50cb4
    12ce:	59                   	pop    %ecx
    12cf:	fa                   	cli    
    12d0:	e4 a1                	in     $0xa1,%al
    12d2:	24 df                	and    $0xdf,%al
    12d4:	e6 a1                	out    %al,$0xa1
    12d6:	c3                   	ret    
    12d7:	90                   	nop
    12d8:	90                   	nop
    12d9:	90                   	nop
    12da:	90                   	nop
    12db:	90                   	nop
    12dc:	90                   	nop
    12dd:	90                   	nop
    12de:	90                   	nop
    12df:	90                   	nop

000012e0 <hwint14>:
    12e0:	e8 26 01 00 00       	call   140b <save>
    12e5:	e4 a1                	in     $0xa1,%al
    12e7:	0c 40                	or     $0x40,%al
    12e9:	e6 a1                	out    %al,$0xa1
    12eb:	b0 20                	mov    $0x20,%al
    12ed:	e6 20                	out    %al,$0x20
    12ef:	90                   	nop
    12f0:	e6 a0                	out    %al,$0xa0
    12f2:	fb                   	sti    
    12f3:	68 0e 00 00 00       	push   $0xe
    12f8:	ff 15 b8 0c 05 00    	call   *0x50cb8
    12fe:	59                   	pop    %ecx
    12ff:	fa                   	cli    
    1300:	e4 a1                	in     $0xa1,%al
    1302:	24 bf                	and    $0xbf,%al
    1304:	e6 a1                	out    %al,$0xa1
    1306:	c3                   	ret    
    1307:	90                   	nop
    1308:	90                   	nop
    1309:	90                   	nop
    130a:	90                   	nop
    130b:	90                   	nop
    130c:	90                   	nop
    130d:	90                   	nop
    130e:	90                   	nop
    130f:	90                   	nop

00001310 <hwint15>:
    1310:	e8 f6 00 00 00       	call   140b <save>
    1315:	e4 a1                	in     $0xa1,%al
    1317:	0c 80                	or     $0x80,%al
    1319:	e6 a1                	out    %al,$0xa1
    131b:	b0 20                	mov    $0x20,%al
    131d:	e6 20                	out    %al,$0x20
    131f:	90                   	nop
    1320:	e6 a0                	out    %al,$0xa0
    1322:	fb                   	sti    
    1323:	68 0f 00 00 00       	push   $0xf
    1328:	ff 15 bc 0c 05 00    	call   *0x50cbc
    132e:	59                   	pop    %ecx
    132f:	fa                   	cli    
    1330:	e4 a1                	in     $0xa1,%al
    1332:	24 7f                	and    $0x7f,%al
    1334:	e6 a1                	out    %al,$0xa1
    1336:	c3                   	ret    

00001337 <divide_error>:
    1337:	68 ff ff ff ff       	push   $0xffffffff
    133c:	68 00 00 00 00       	push   $0x0
    1341:	e9 b9 00 00 00       	jmp    13ff <exception>

00001346 <single_step_exception>:
    1346:	68 ff ff ff ff       	push   $0xffffffff
    134b:	68 01 00 00 00       	push   $0x1
    1350:	e9 aa 00 00 00       	jmp    13ff <exception>

00001355 <nmi>:
    1355:	68 ff ff ff ff       	push   $0xffffffff
    135a:	68 02 00 00 00       	push   $0x2
    135f:	e9 9b 00 00 00       	jmp    13ff <exception>

00001364 <breakpoint_exception>:
    1364:	68 ff ff ff ff       	push   $0xffffffff
    1369:	68 03 00 00 00       	push   $0x3
    136e:	e9 8c 00 00 00       	jmp    13ff <exception>

00001373 <overflow>:
    1373:	68 ff ff ff ff       	push   $0xffffffff
    1378:	68 04 00 00 00       	push   $0x4
    137d:	e9 7d 00 00 00       	jmp    13ff <exception>

00001382 <bounds_check>:
    1382:	68 ff ff ff ff       	push   $0xffffffff
    1387:	68 05 00 00 00       	push   $0x5
    138c:	e9 6e 00 00 00       	jmp    13ff <exception>

00001391 <inval_opcode>:
    1391:	68 ff ff ff ff       	push   $0xffffffff
    1396:	68 06 00 00 00       	push   $0x6
    139b:	e9 5f 00 00 00       	jmp    13ff <exception>

000013a0 <copr_not_available>:
    13a0:	68 ff ff ff ff       	push   $0xffffffff
    13a5:	68 07 00 00 00       	push   $0x7
    13aa:	e9 50 00 00 00       	jmp    13ff <exception>

000013af <double_fault>:
    13af:	68 08 00 00 00       	push   $0x8
    13b4:	e9 46 00 00 00       	jmp    13ff <exception>

000013b9 <copr_seg_overrun>:
    13b9:	68 ff ff ff ff       	push   $0xffffffff
    13be:	68 09 00 00 00       	push   $0x9
    13c3:	e9 37 00 00 00       	jmp    13ff <exception>

000013c8 <inval_tss>:
    13c8:	68 0a 00 00 00       	push   $0xa
    13cd:	e9 2d 00 00 00       	jmp    13ff <exception>

000013d2 <segment_not_present>:
    13d2:	68 0b 00 00 00       	push   $0xb
    13d7:	e9 23 00 00 00       	jmp    13ff <exception>

000013dc <stack_exception>:
    13dc:	68 0c 00 00 00       	push   $0xc
    13e1:	e9 19 00 00 00       	jmp    13ff <exception>

000013e6 <general_protection>:
    13e6:	68 0d 00 00 00       	push   $0xd
    13eb:	e9 0f 00 00 00       	jmp    13ff <exception>

000013f0 <copr_error>:
    13f0:	68 ff ff ff ff       	push   $0xffffffff
    13f5:	68 10 00 00 00       	push   $0x10
    13fa:	e9 00 00 00 00       	jmp    13ff <exception>

000013ff <exception>:
    13ff:	e8 ee 14 00 00       	call   28f2 <exception_handler>
    1404:	81 c4 08 00 00 00    	add    $0x8,%esp
    140a:	f4                   	hlt    

0000140b <save>:
    140b:	60                   	pusha  
    140c:	1e                   	push   %ds
    140d:	06                   	push   %es
    140e:	0f a0                	push   %fs
    1410:	0f a8                	push   %gs
    1412:	89 d6                	mov    %edx,%esi
    1414:	66 8c d2             	mov    %ss,%dx
    1417:	8e da                	mov    %edx,%ds
    1419:	8e c2                	mov    %edx,%es
    141b:	8e e2                	mov    %edx,%fs
    141d:	89 f2                	mov    %esi,%edx
    141f:	89 e6                	mov    %esp,%esi
    1421:	ff 05 88 d6 04 00    	incl   0x4d688
    1427:	81 3d 88 d6 04 00 00 	cmpl   $0x0,0x4d688
    142e:	00 00 00 
    1431:	75 0d                	jne    1440 <save.1>
    1433:	bc 40 42 01 00       	mov    $0x14240,%esp
    1438:	68 6b 14 00 00       	push   $0x146b
    143d:	ff 66 30             	jmp    *0x30(%esi)

00001440 <save.1>:
    1440:	68 7f 14 00 00       	push   $0x147f
    1445:	ff 66 30             	jmp    *0x30(%esi)

00001448 <sys_call>:
    1448:	e8 be ff ff ff       	call   140b <save>
    144d:	fb                   	sti    
    144e:	56                   	push   %esi
    144f:	ff 35 64 ed 04 00    	pushl  0x4ed64
    1455:	52                   	push   %edx
    1456:	51                   	push   %ecx
    1457:	53                   	push   %ebx
    1458:	ff 14 85 80 32 01 00 	call   *0x13280(,%eax,4)
    145f:	81 c4 10 00 00 00    	add    $0x10,%esp
    1465:	5e                   	pop    %esi
    1466:	89 46 2c             	mov    %eax,0x2c(%esi)
    1469:	fa                   	cli    
    146a:	c3                   	ret    

0000146b <restart>:
    146b:	8b 25 64 ed 04 00    	mov    0x4ed64,%esp
    1471:	0f 00 54 24 48       	lldt   0x48(%esp)
    1476:	8d 44 24 48          	lea    0x48(%esp),%eax
    147a:	a3 a4 e7 04 00       	mov    %eax,0x4e7a4

0000147f <restart_reenter>:
    147f:	ff 0d 88 d6 04 00    	decl   0x4d688
    1485:	0f a9                	pop    %gs
    1487:	0f a1                	pop    %fs
    1489:	07                   	pop    %es
    148a:	1f                   	pop    %ds
    148b:	61                   	popa   
    148c:	81 c4 04 00 00 00    	add    $0x4,%esp
    1492:	cf                   	iret   
    1493:	90                   	nop

00001494 <cstart>:
    1494:	55                   	push   %ebp
    1495:	89 e5                	mov    %esp,%ebp
    1497:	83 ec 28             	sub    $0x28,%esp
    149a:	b8 d4 01 05 00       	mov    $0x501d4,%eax
    149f:	0f b7 00             	movzwl (%eax),%eax
    14a2:	0f b7 c0             	movzwl %ax,%eax
    14a5:	8d 50 01             	lea    0x1(%eax),%edx
    14a8:	b8 d4 01 05 00       	mov    $0x501d4,%eax
    14ad:	83 c0 02             	add    $0x2,%eax
    14b0:	8b 00                	mov    (%eax),%eax
    14b2:	89 54 24 08          	mov    %edx,0x8(%esp)
    14b6:	89 44 24 04          	mov    %eax,0x4(%esp)
    14ba:	c7 04 24 a0 d6 04 00 	movl   $0x4d6a0,(%esp)
    14c1:	e8 2a ec 00 00       	call   100f0 <memcpy>
    14c6:	c7 45 f4 d4 01 05 00 	movl   $0x501d4,-0xc(%ebp)
    14cd:	b8 d4 01 05 00       	mov    $0x501d4,%eax
    14d2:	83 c0 02             	add    $0x2,%eax
    14d5:	89 45 f0             	mov    %eax,-0x10(%ebp)
    14d8:	8b 45 f4             	mov    -0xc(%ebp),%eax
    14db:	66 c7 00 ff 03       	movw   $0x3ff,(%eax)
    14e0:	ba a0 d6 04 00       	mov    $0x4d6a0,%edx
    14e5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    14e8:	89 10                	mov    %edx,(%eax)
    14ea:	c7 45 ec 64 4b 01 00 	movl   $0x14b64,-0x14(%ebp)
    14f1:	b8 64 4b 01 00       	mov    $0x14b64,%eax
    14f6:	83 c0 02             	add    $0x2,%eax
    14f9:	89 45 e8             	mov    %eax,-0x18(%ebp)
    14fc:	8b 45 ec             	mov    -0x14(%ebp),%eax
    14ff:	66 c7 00 ff 07       	movw   $0x7ff,(%eax)
    1504:	ba 00 02 05 00       	mov    $0x50200,%edx
    1509:	8b 45 e8             	mov    -0x18(%ebp),%eax
    150c:	89 10                	mov    %edx,(%eax)
    150e:	e8 c9 0c 00 00       	call   21dc <init_prot>
    1513:	c9                   	leave  
    1514:	c3                   	ret    
    1515:	90                   	nop
    1516:	90                   	nop
    1517:	90                   	nop

00001518 <kernel_main>:
    1518:	55                   	push   %ebp
    1519:	89 e5                	mov    %esp,%ebp
    151b:	83 ec 48             	sub    $0x48,%esp
    151e:	c7 04 24 48 0a 01 00 	movl   $0x10a48,(%esp)
    1525:	e8 c6 39 00 00       	call   4ef0 <disp_str>
    152a:	c7 45 dc c0 0c 05 00 	movl   $0x50cc0,-0x24(%ebp)
    1531:	c7 45 d8 80 d6 04 00 	movl   $0x4d680,-0x28(%ebp)
    1538:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    153f:	e9 f9 02 00 00       	jmp    183d <kernel_main+0x325>
    1544:	83 7d f4 0d          	cmpl   $0xd,-0xc(%ebp)
    1548:	7e 0f                	jle    1559 <kernel_main+0x41>
    154a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    154d:	c7 40 72 20 00 00 00 	movl   $0x20,0x72(%eax)
    1554:	e9 d5 02 00 00       	jmp    182e <kernel_main+0x316>
    1559:	83 7d f4 09          	cmpl   $0x9,-0xc(%ebp)
    155d:	7f 2d                	jg     158c <kernel_main+0x74>
    155f:	8b 55 f4             	mov    -0xc(%ebp),%edx
    1562:	89 d0                	mov    %edx,%eax
    1564:	c1 e0 02             	shl    $0x2,%eax
    1567:	01 d0                	add    %edx,%eax
    1569:	c1 e0 03             	shl    $0x3,%eax
    156c:	05 40 30 01 00       	add    $0x13040,%eax
    1571:	89 45 e0             	mov    %eax,-0x20(%ebp)
    1574:	c6 45 e6 01          	movb   $0x1,-0x1a(%ebp)
    1578:	c6 45 e7 01          	movb   $0x1,-0x19(%ebp)
    157c:	c7 45 ec 02 12 00 00 	movl   $0x1202,-0x14(%ebp)
    1583:	c7 45 e8 0f 00 00 00 	movl   $0xf,-0x18(%ebp)
    158a:	eb 30                	jmp    15bc <kernel_main+0xa4>
    158c:	8b 55 f4             	mov    -0xc(%ebp),%edx
    158f:	89 d0                	mov    %edx,%eax
    1591:	c1 e0 02             	shl    $0x2,%eax
    1594:	01 d0                	add    %edx,%eax
    1596:	c1 e0 03             	shl    $0x3,%eax
    1599:	2d 90 01 00 00       	sub    $0x190,%eax
    159e:	05 e0 31 01 00       	add    $0x131e0,%eax
    15a3:	89 45 e0             	mov    %eax,-0x20(%ebp)
    15a6:	c6 45 e6 03          	movb   $0x3,-0x1a(%ebp)
    15aa:	c6 45 e7 03          	movb   $0x3,-0x19(%ebp)
    15ae:	c7 45 ec 02 02 00 00 	movl   $0x202,-0x14(%ebp)
    15b5:	c7 45 e8 05 00 00 00 	movl   $0x5,-0x18(%ebp)
    15bc:	8b 45 e0             	mov    -0x20(%ebp),%eax
    15bf:	8d 50 08             	lea    0x8(%eax),%edx
    15c2:	8b 45 dc             	mov    -0x24(%ebp),%eax
    15c5:	83 c0 62             	add    $0x62,%eax
    15c8:	89 54 24 04          	mov    %edx,0x4(%esp)
    15cc:	89 04 24             	mov    %eax,(%esp)
    15cf:	e8 72 eb 00 00       	call   10146 <strcpy>
    15d4:	8b 45 dc             	mov    -0x24(%ebp),%eax
    15d7:	c7 80 1a 02 00 00 3e 	movl   $0x3e,0x21a(%eax)
    15de:	00 00 00 
    15e1:	8b 45 e0             	mov    -0x20(%ebp),%eax
    15e4:	83 c0 08             	add    $0x8,%eax
    15e7:	c7 44 24 04 59 0a 01 	movl   $0x10a59,0x4(%esp)
    15ee:	00 
    15ef:	89 04 24             	mov    %eax,(%esp)
    15f2:	e8 e2 ec 00 00       	call   102d9 <strcmp>
    15f7:	85 c0                	test   %eax,%eax
    15f9:	74 51                	je     164c <kernel_main+0x134>
    15fb:	8b 4d dc             	mov    -0x24(%ebp),%ecx
    15fe:	a1 a8 d6 04 00       	mov    0x4d6a8,%eax
    1603:	8b 15 ac d6 04 00    	mov    0x4d6ac,%edx
    1609:	89 41 4a             	mov    %eax,0x4a(%ecx)
    160c:	89 51 4e             	mov    %edx,0x4e(%ecx)
    160f:	8b 4d dc             	mov    -0x24(%ebp),%ecx
    1612:	a1 b0 d6 04 00       	mov    0x4d6b0,%eax
    1617:	8b 15 b4 d6 04 00    	mov    0x4d6b4,%edx
    161d:	89 41 52             	mov    %eax,0x52(%ecx)
    1620:	89 51 56             	mov    %edx,0x56(%ecx)
    1623:	0f b6 45 e6          	movzbl -0x1a(%ebp),%eax
    1627:	c1 e0 05             	shl    $0x5,%eax
    162a:	83 c8 98             	or     $0xffffff98,%eax
    162d:	89 c2                	mov    %eax,%edx
    162f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1632:	88 50 4f             	mov    %dl,0x4f(%eax)
    1635:	0f b6 45 e6          	movzbl -0x1a(%ebp),%eax
    1639:	c1 e0 05             	shl    $0x5,%eax
    163c:	83 c8 92             	or     $0xffffff92,%eax
    163f:	89 c2                	mov    %eax,%edx
    1641:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1644:	88 50 57             	mov    %dl,0x57(%eax)
    1647:	e9 b3 00 00 00       	jmp    16ff <kernel_main+0x1e7>
    164c:	8d 45 cc             	lea    -0x34(%ebp),%eax
    164f:	89 44 24 04          	mov    %eax,0x4(%esp)
    1653:	8d 45 d0             	lea    -0x30(%ebp),%eax
    1656:	89 04 24             	mov    %eax,(%esp)
    1659:	e8 78 3b 00 00       	call   51d6 <get_kernel_map>
    165e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    1661:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
    1665:	74 24                	je     168b <kernel_main+0x173>
    1667:	c7 44 24 0c 56 00 00 	movl   $0x56,0xc(%esp)
    166e:	00 
    166f:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1676:	00 
    1677:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    167e:	00 
    167f:	c7 04 24 65 0a 01 00 	movl   $0x10a65,(%esp)
    1686:	e8 3f ed 00 00       	call   103ca <assertion_failure>
    168b:	0f b6 45 e6          	movzbl -0x1a(%ebp),%eax
    168f:	c1 e0 05             	shl    $0x5,%eax
    1692:	66 0d 98 c0          	or     $0xc098,%ax
    1696:	0f b7 c0             	movzwl %ax,%eax
    1699:	8b 4d d0             	mov    -0x30(%ebp),%ecx
    169c:	8b 55 cc             	mov    -0x34(%ebp),%edx
    169f:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    16a2:	89 d1                	mov    %edx,%ecx
    16a4:	c1 e9 0c             	shr    $0xc,%ecx
    16a7:	8b 55 dc             	mov    -0x24(%ebp),%edx
    16aa:	83 c2 4a             	add    $0x4a,%edx
    16ad:	89 44 24 0c          	mov    %eax,0xc(%esp)
    16b1:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    16b5:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    16bc:	00 
    16bd:	89 14 24             	mov    %edx,(%esp)
    16c0:	e8 c1 11 00 00       	call   2886 <init_desc>
    16c5:	0f b6 45 e6          	movzbl -0x1a(%ebp),%eax
    16c9:	c1 e0 05             	shl    $0x5,%eax
    16cc:	66 0d 92 c0          	or     $0xc092,%ax
    16d0:	0f b7 c0             	movzwl %ax,%eax
    16d3:	8b 4d d0             	mov    -0x30(%ebp),%ecx
    16d6:	8b 55 cc             	mov    -0x34(%ebp),%edx
    16d9:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    16dc:	89 d1                	mov    %edx,%ecx
    16de:	c1 e9 0c             	shr    $0xc,%ecx
    16e1:	8b 55 dc             	mov    -0x24(%ebp),%edx
    16e4:	83 c2 52             	add    $0x52,%edx
    16e7:	89 44 24 0c          	mov    %eax,0xc(%esp)
    16eb:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    16ef:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    16f6:	00 
    16f7:	89 14 24             	mov    %edx,(%esp)
    16fa:	e8 87 11 00 00       	call   2886 <init_desc>
    16ff:	0f b6 45 e7          	movzbl -0x19(%ebp),%eax
    1703:	83 c8 04             	or     $0x4,%eax
    1706:	0f b6 d0             	movzbl %al,%edx
    1709:	8b 45 dc             	mov    -0x24(%ebp),%eax
    170c:	89 50 38             	mov    %edx,0x38(%eax)
    170f:	0f b6 45 e7          	movzbl -0x19(%ebp),%eax
    1713:	83 c8 0c             	or     $0xc,%eax
    1716:	0f b6 d0             	movzbl %al,%edx
    1719:	8b 45 dc             	mov    -0x24(%ebp),%eax
    171c:	89 50 44             	mov    %edx,0x44(%eax)
    171f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1722:	8b 50 44             	mov    0x44(%eax),%edx
    1725:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1728:	89 50 04             	mov    %edx,0x4(%eax)
    172b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    172e:	8b 50 04             	mov    0x4(%eax),%edx
    1731:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1734:	89 50 08             	mov    %edx,0x8(%eax)
    1737:	8b 45 dc             	mov    -0x24(%ebp),%eax
    173a:	8b 50 08             	mov    0x8(%eax),%edx
    173d:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1740:	89 50 0c             	mov    %edx,0xc(%eax)
    1743:	0f b6 45 e7          	movzbl -0x19(%ebp),%eax
    1747:	83 c8 18             	or     $0x18,%eax
    174a:	0f b6 d0             	movzbl %al,%edx
    174d:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1750:	89 10                	mov    %edx,(%eax)
    1752:	8b 45 e0             	mov    -0x20(%ebp),%eax
    1755:	8b 00                	mov    (%eax),%eax
    1757:	89 c2                	mov    %eax,%edx
    1759:	8b 45 dc             	mov    -0x24(%ebp),%eax
    175c:	89 50 34             	mov    %edx,0x34(%eax)
    175f:	8b 55 d8             	mov    -0x28(%ebp),%edx
    1762:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1765:	89 50 40             	mov    %edx,0x40(%eax)
    1768:	8b 55 ec             	mov    -0x14(%ebp),%edx
    176b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    176e:	89 50 3c             	mov    %edx,0x3c(%eax)
    1771:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1774:	8b 55 e8             	mov    -0x18(%ebp),%edx
    1777:	89 50 5e             	mov    %edx,0x5e(%eax)
    177a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    177d:	8b 50 5e             	mov    0x5e(%eax),%edx
    1780:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1783:	89 50 5a             	mov    %edx,0x5a(%eax)
    1786:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1789:	c7 40 72 00 00 00 00 	movl   $0x0,0x72(%eax)
    1790:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1793:	c7 80 02 02 00 00 00 	movl   $0x0,0x202(%eax)
    179a:	00 00 00 
    179d:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17a0:	c7 80 06 02 00 00 3e 	movl   $0x3e,0x206(%eax)
    17a7:	00 00 00 
    17aa:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17ad:	c7 80 0a 02 00 00 3e 	movl   $0x3e,0x20a(%eax)
    17b4:	00 00 00 
    17b7:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17ba:	c7 80 0e 02 00 00 00 	movl   $0x0,0x20e(%eax)
    17c1:	00 00 00 
    17c4:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17c7:	c7 80 12 02 00 00 00 	movl   $0x0,0x212(%eax)
    17ce:	00 00 00 
    17d1:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17d4:	c7 80 16 02 00 00 00 	movl   $0x0,0x216(%eax)
    17db:	00 00 00 
    17de:	8b 15 60 ed 04 00    	mov    0x4ed60,%edx
    17e4:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17e7:	89 90 2a 02 00 00    	mov    %edx,0x22a(%eax)
    17ed:	8b 15 60 ed 04 00    	mov    0x4ed60,%edx
    17f3:	8b 45 dc             	mov    -0x24(%ebp),%eax
    17f6:	89 90 2e 02 00 00    	mov    %edx,0x22e(%eax)
    17fc:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    1803:	eb 18                	jmp    181d <kernel_main+0x305>
    1805:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1808:	8b 55 f0             	mov    -0x10(%ebp),%edx
    180b:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    1811:	c7 44 90 06 00 00 00 	movl   $0x0,0x6(%eax,%edx,4)
    1818:	00 
    1819:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    181d:	83 7d f0 3f          	cmpl   $0x3f,-0x10(%ebp)
    1821:	7e e2                	jle    1805 <kernel_main+0x2ed>
    1823:	8b 45 e0             	mov    -0x20(%ebp),%eax
    1826:	8b 40 04             	mov    0x4(%eax),%eax
    1829:	f7 d8                	neg    %eax
    182b:	01 45 d8             	add    %eax,-0x28(%ebp)
    182e:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    1832:	81 45 dc 36 03 00 00 	addl   $0x336,-0x24(%ebp)
    1839:	83 45 e0 28          	addl   $0x28,-0x20(%ebp)
    183d:	83 7d f4 29          	cmpl   $0x29,-0xc(%ebp)
    1841:	0f 8e fd fc ff ff    	jle    1544 <kernel_main+0x2c>
    1847:	c7 05 88 d6 04 00 00 	movl   $0x0,0x4d688
    184e:	00 00 00 
    1851:	c7 05 e0 01 05 00 00 	movl   $0x0,0x501e0
    1858:	00 00 00 
    185b:	c7 05 64 ed 04 00 c0 	movl   $0x50cc0,0x4ed64
    1862:	0c 05 00 
    1865:	e8 cf 07 00 00       	call   2039 <init_clock>
    186a:	e8 9e d2 00 00       	call   eb0d <init_keyboard>
    186f:	e8 f7 fb ff ff       	call   146b <restart>
    1874:	eb fe                	jmp    1874 <kernel_main+0x35c>

00001876 <get_ticks>:
    1876:	55                   	push   %ebp
    1877:	89 e5                	mov    %esp,%ebp
    1879:	83 ec 48             	sub    $0x48,%esp
    187c:	8d 45 c8             	lea    -0x38(%ebp),%eax
    187f:	89 04 24             	mov    %eax,(%esp)
    1882:	e8 bb 1c 00 00       	call   3542 <reset_msg>
    1887:	c7 45 cc 02 00 00 00 	movl   $0x2,-0x34(%ebp)
    188e:	8d 45 c8             	lea    -0x38(%ebp),%eax
    1891:	89 44 24 08          	mov    %eax,0x8(%esp)
    1895:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    189c:	00 
    189d:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    18a4:	e8 cf e8 00 00       	call   10178 <send_recv>
    18a9:	8b 45 d0             	mov    -0x30(%ebp),%eax
    18ac:	c9                   	leave  
    18ad:	c3                   	ret    

000018ae <untar>:
    18ae:	55                   	push   %ebp
    18af:	89 e5                	mov    %esp,%ebp
    18b1:	81 ec 48 20 00 00    	sub    $0x2048,%esp
    18b7:	c7 04 24 6e 0a 01 00 	movl   $0x10a6e,(%esp)
    18be:	e8 45 e4 00 00       	call   fd08 <printf>
    18c3:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    18ca:	00 
    18cb:	8b 45 08             	mov    0x8(%ebp),%eax
    18ce:	89 04 24             	mov    %eax,(%esp)
    18d1:	e8 fa ea 00 00       	call   103d0 <open>
    18d6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    18d9:	83 7d e4 ff          	cmpl   $0xffffffff,-0x1c(%ebp)
    18dd:	75 24                	jne    1903 <untar+0x55>
    18df:	c7 44 24 0c d0 00 00 	movl   $0xd0,0xc(%esp)
    18e6:	00 
    18e7:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    18ee:	00 
    18ef:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    18f6:	00 
    18f7:	c7 04 24 87 0a 01 00 	movl   $0x10a87,(%esp)
    18fe:	e8 c7 ea 00 00       	call   103ca <assertion_failure>
    1903:	c7 45 e0 00 20 00 00 	movl   $0x2000,-0x20(%ebp)
    190a:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    1911:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    1918:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    191f:	00 
    1920:	8d 85 d0 df ff ff    	lea    -0x2030(%ebp),%eax
    1926:	89 44 24 04          	mov    %eax,0x4(%esp)
    192a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    192d:	89 04 24             	mov    %eax,(%esp)
    1930:	e8 7f eb 00 00       	call   104b4 <read>
    1935:	89 45 dc             	mov    %eax,-0x24(%ebp)
    1938:	81 7d dc 00 02 00 00 	cmpl   $0x200,-0x24(%ebp)
    193f:	74 24                	je     1965 <untar+0xb7>
    1941:	c7 44 24 0c d9 00 00 	movl   $0xd9,0xc(%esp)
    1948:	00 
    1949:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1950:	00 
    1951:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1958:	00 
    1959:	c7 04 24 90 0a 01 00 	movl   $0x10a90,(%esp)
    1960:	e8 65 ea 00 00       	call   103ca <assertion_failure>
    1965:	0f b6 85 d0 df ff ff 	movzbl -0x2030(%ebp),%eax
    196c:	84 c0                	test   %al,%al
    196e:	75 21                	jne    1991 <untar+0xe3>
    1970:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    1974:	75 0c                	jne    1982 <untar+0xd4>
    1976:	c7 04 24 a5 0a 01 00 	movl   $0x10aa5,(%esp)
    197d:	e8 86 e3 00 00       	call   fd08 <printf>
    1982:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    1986:	0f 85 6c 01 00 00    	jne    1af8 <untar+0x24a>
    198c:	e9 d3 01 00 00       	jmp    1b64 <untar+0x2b6>
    1991:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    1995:	8d 85 d0 df ff ff    	lea    -0x2030(%ebp),%eax
    199b:	89 45 d8             	mov    %eax,-0x28(%ebp)
    199e:	8b 45 d8             	mov    -0x28(%ebp),%eax
    19a1:	83 c0 7c             	add    $0x7c,%eax
    19a4:	89 45 f0             	mov    %eax,-0x10(%ebp)
    19a7:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    19ae:	eb 20                	jmp    19d0 <untar+0x122>
    19b0:	8b 45 ec             	mov    -0x14(%ebp),%eax
    19b3:	8d 14 c5 00 00 00 00 	lea    0x0(,%eax,8),%edx
    19ba:	8b 45 f0             	mov    -0x10(%ebp),%eax
    19bd:	0f b6 00             	movzbl (%eax),%eax
    19c0:	0f be c0             	movsbl %al,%eax
    19c3:	83 e8 30             	sub    $0x30,%eax
    19c6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    19c9:	89 45 ec             	mov    %eax,-0x14(%ebp)
    19cc:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    19d0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    19d3:	0f b6 00             	movzbl (%eax),%eax
    19d6:	84 c0                	test   %al,%al
    19d8:	75 d6                	jne    19b0 <untar+0x102>
    19da:	8b 45 ec             	mov    -0x14(%ebp),%eax
    19dd:	89 45 e8             	mov    %eax,-0x18(%ebp)
    19e0:	8b 45 d8             	mov    -0x28(%ebp),%eax
    19e3:	c7 44 24 04 07 00 00 	movl   $0x7,0x4(%esp)
    19ea:	00 
    19eb:	89 04 24             	mov    %eax,(%esp)
    19ee:	e8 dd e9 00 00       	call   103d0 <open>
    19f3:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    19f6:	83 7d d4 ff          	cmpl   $0xffffffff,-0x2c(%ebp)
    19fa:	75 2f                	jne    1a2b <untar+0x17d>
    19fc:	8b 45 d8             	mov    -0x28(%ebp),%eax
    19ff:	89 44 24 04          	mov    %eax,0x4(%esp)
    1a03:	c7 04 24 c0 0a 01 00 	movl   $0x10ac0,(%esp)
    1a0a:	e8 f9 e2 00 00       	call   fd08 <printf>
    1a0f:	c7 04 24 df 0a 01 00 	movl   $0x10adf,(%esp)
    1a16:	e8 ed e2 00 00       	call   fd08 <printf>
    1a1b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    1a1e:	89 04 24             	mov    %eax,(%esp)
    1a21:	e8 0e eb 00 00       	call   10534 <close>
    1a26:	e9 57 01 00 00       	jmp    1b82 <untar+0x2d4>
    1a2b:	8b 45 d8             	mov    -0x28(%ebp),%eax
    1a2e:	8d 50 7c             	lea    0x7c(%eax),%edx
    1a31:	8b 45 d8             	mov    -0x28(%ebp),%eax
    1a34:	89 54 24 08          	mov    %edx,0x8(%esp)
    1a38:	89 44 24 04          	mov    %eax,0x4(%esp)
    1a3c:	c7 04 24 e8 0a 01 00 	movl   $0x10ae8,(%esp)
    1a43:	e8 c0 e2 00 00       	call   fd08 <printf>
    1a48:	e9 91 00 00 00       	jmp    1ade <untar+0x230>
    1a4d:	8b 45 e0             	mov    -0x20(%ebp),%eax
    1a50:	39 45 e8             	cmp    %eax,-0x18(%ebp)
    1a53:	0f 4e 45 e8          	cmovle -0x18(%ebp),%eax
    1a57:	89 45 d0             	mov    %eax,-0x30(%ebp)
    1a5a:	8b 45 d0             	mov    -0x30(%ebp),%eax
    1a5d:	83 e8 01             	sub    $0x1,%eax
    1a60:	8d 90 ff 01 00 00    	lea    0x1ff(%eax),%edx
    1a66:	85 c0                	test   %eax,%eax
    1a68:	0f 48 c2             	cmovs  %edx,%eax
    1a6b:	c1 f8 09             	sar    $0x9,%eax
    1a6e:	83 c0 01             	add    $0x1,%eax
    1a71:	c1 e0 09             	shl    $0x9,%eax
    1a74:	89 44 24 08          	mov    %eax,0x8(%esp)
    1a78:	8d 85 d0 df ff ff    	lea    -0x2030(%ebp),%eax
    1a7e:	89 44 24 04          	mov    %eax,0x4(%esp)
    1a82:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    1a85:	89 04 24             	mov    %eax,(%esp)
    1a88:	e8 27 ea 00 00       	call   104b4 <read>
    1a8d:	8b 45 d0             	mov    -0x30(%ebp),%eax
    1a90:	89 44 24 08          	mov    %eax,0x8(%esp)
    1a94:	8d 85 d0 df ff ff    	lea    -0x2030(%ebp),%eax
    1a9a:	89 44 24 04          	mov    %eax,0x4(%esp)
    1a9e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    1aa1:	89 04 24             	mov    %eax,(%esp)
    1aa4:	e8 4b ea 00 00       	call   104f4 <write>
    1aa9:	89 45 dc             	mov    %eax,-0x24(%ebp)
    1aac:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1aaf:	3b 45 d0             	cmp    -0x30(%ebp),%eax
    1ab2:	74 24                	je     1ad8 <untar+0x22a>
    1ab4:	c7 44 24 0c f9 00 00 	movl   $0xf9,0xc(%esp)
    1abb:	00 
    1abc:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1ac3:	00 
    1ac4:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1acb:	00 
    1acc:	c7 04 24 fa 0a 01 00 	movl   $0x10afa,(%esp)
    1ad3:	e8 f2 e8 00 00       	call   103ca <assertion_failure>
    1ad8:	8b 45 d0             	mov    -0x30(%ebp),%eax
    1adb:	29 45 e8             	sub    %eax,-0x18(%ebp)
    1ade:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    1ae2:	0f 85 65 ff ff ff    	jne    1a4d <untar+0x19f>
    1ae8:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    1aeb:	89 04 24             	mov    %eax,(%esp)
    1aee:	e8 41 ea 00 00       	call   10534 <close>
    1af3:	e9 20 fe ff ff       	jmp    1918 <untar+0x6a>
    1af8:	c7 44 24 08 01 00 00 	movl   $0x1,0x8(%esp)
    1aff:	00 
    1b00:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    1b07:	00 
    1b08:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    1b0b:	89 04 24             	mov    %eax,(%esp)
    1b0e:	e8 55 ea 00 00       	call   10568 <lseek>
    1b13:	c6 85 d0 df ff ff 00 	movb   $0x0,-0x2030(%ebp)
    1b1a:	c7 44 24 08 01 00 00 	movl   $0x1,0x8(%esp)
    1b21:	00 
    1b22:	8d 85 d0 df ff ff    	lea    -0x2030(%ebp),%eax
    1b28:	89 44 24 04          	mov    %eax,0x4(%esp)
    1b2c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    1b2f:	89 04 24             	mov    %eax,(%esp)
    1b32:	e8 bd e9 00 00       	call   104f4 <write>
    1b37:	89 45 dc             	mov    %eax,-0x24(%ebp)
    1b3a:	83 7d dc 01          	cmpl   $0x1,-0x24(%ebp)
    1b3e:	74 24                	je     1b64 <untar+0x2b6>
    1b40:	c7 44 24 0c 03 01 00 	movl   $0x103,0xc(%esp)
    1b47:	00 
    1b48:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1b4f:	00 
    1b50:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1b57:	00 
    1b58:	c7 04 24 0b 0b 01 00 	movl   $0x10b0b,(%esp)
    1b5f:	e8 66 e8 00 00       	call   103ca <assertion_failure>
    1b64:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    1b67:	89 04 24             	mov    %eax,(%esp)
    1b6a:	e8 c5 e9 00 00       	call   10534 <close>
    1b6f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    1b72:	89 44 24 04          	mov    %eax,0x4(%esp)
    1b76:	c7 04 24 16 0b 01 00 	movl   $0x10b16,(%esp)
    1b7d:	e8 86 e1 00 00       	call   fd08 <printf>
    1b82:	c9                   	leave  
    1b83:	c3                   	ret    

00001b84 <shell>:
    1b84:	55                   	push   %ebp
    1b85:	89 e5                	mov    %esp,%ebp
    1b87:	81 ec c8 10 00 00    	sub    $0x10c8,%esp
    1b8d:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    1b94:	00 
    1b95:	8b 45 08             	mov    0x8(%ebp),%eax
    1b98:	89 04 24             	mov    %eax,(%esp)
    1b9b:	e8 30 e8 00 00       	call   103d0 <open>
    1ba0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    1ba3:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    1ba7:	74 24                	je     1bcd <shell+0x49>
    1ba9:	c7 44 24 0c 16 01 00 	movl   $0x116,0xc(%esp)
    1bb0:	00 
    1bb1:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1bb8:	00 
    1bb9:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1bc0:	00 
    1bc1:	c7 04 24 1e 0b 01 00 	movl   $0x10b1e,(%esp)
    1bc8:	e8 fd e7 00 00       	call   103ca <assertion_failure>
    1bcd:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    1bd4:	00 
    1bd5:	8b 45 08             	mov    0x8(%ebp),%eax
    1bd8:	89 04 24             	mov    %eax,(%esp)
    1bdb:	e8 f0 e7 00 00       	call   103d0 <open>
    1be0:	89 45 e0             	mov    %eax,-0x20(%ebp)
    1be3:	83 7d e0 01          	cmpl   $0x1,-0x20(%ebp)
    1be7:	74 24                	je     1c0d <shell+0x89>
    1be9:	c7 44 24 0c 18 01 00 	movl   $0x118,0xc(%esp)
    1bf0:	00 
    1bf1:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1bf8:	00 
    1bf9:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1c00:	00 
    1c01:	c7 04 24 2c 0b 01 00 	movl   $0x10b2c,(%esp)
    1c08:	e8 bd e7 00 00       	call   103ca <assertion_failure>
    1c0d:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    1c14:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1c17:	89 04 24             	mov    %eax,(%esp)
    1c1a:	e8 85 ed 00 00       	call   109a4 <uname>
    1c1f:	eb 01                	jmp    1c22 <shell+0x9e>
    1c21:	90                   	nop
    1c22:	8b 45 dc             	mov    -0x24(%ebp),%eax
    1c25:	83 c0 09             	add    $0x9,%eax
    1c28:	89 44 24 04          	mov    %eax,0x4(%esp)
    1c2c:	c7 04 24 3b 0b 01 00 	movl   $0x10b3b,(%esp)
    1c33:	e8 d0 e0 00 00       	call   fd08 <printf>
    1c38:	c7 44 24 08 46 00 00 	movl   $0x46,0x8(%esp)
    1c3f:	00 
    1c40:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
    1c46:	89 44 24 04          	mov    %eax,0x4(%esp)
    1c4a:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    1c51:	e8 5e e8 00 00       	call   104b4 <read>
    1c56:	89 45 d8             	mov    %eax,-0x28(%ebp)
    1c59:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
    1c5f:	03 45 d8             	add    -0x28(%ebp),%eax
    1c62:	c6 00 00             	movb   $0x0,(%eax)
    1c65:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    1c6c:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
    1c72:	89 45 f0             	mov    %eax,-0x10(%ebp)
    1c75:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
    1c7c:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1c7f:	0f b6 00             	movzbl (%eax),%eax
    1c82:	88 45 d7             	mov    %al,-0x29(%ebp)
    1c85:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1c88:	0f b6 00             	movzbl (%eax),%eax
    1c8b:	3c 20                	cmp    $0x20,%al
    1c8d:	74 1d                	je     1cac <shell+0x128>
    1c8f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1c92:	0f b6 00             	movzbl (%eax),%eax
    1c95:	84 c0                	test   %al,%al
    1c97:	74 13                	je     1cac <shell+0x128>
    1c99:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    1c9d:	75 0d                	jne    1cac <shell+0x128>
    1c9f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1ca2:	89 45 ec             	mov    %eax,-0x14(%ebp)
    1ca5:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
    1cac:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1caf:	0f b6 00             	movzbl (%eax),%eax
    1cb2:	3c 20                	cmp    $0x20,%al
    1cb4:	74 0a                	je     1cc0 <shell+0x13c>
    1cb6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1cb9:	0f b6 00             	movzbl (%eax),%eax
    1cbc:	84 c0                	test   %al,%al
    1cbe:	75 24                	jne    1ce4 <shell+0x160>
    1cc0:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    1cc4:	74 1e                	je     1ce4 <shell+0x160>
    1cc6:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
    1ccd:	8b 45 f4             	mov    -0xc(%ebp),%eax
    1cd0:	8b 55 ec             	mov    -0x14(%ebp),%edx
    1cd3:	89 94 85 48 ef ff ff 	mov    %edx,-0x10b8(%ebp,%eax,4)
    1cda:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    1cde:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1ce1:	c6 00 00             	movb   $0x0,(%eax)
    1ce4:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    1ce8:	80 7d d7 00          	cmpb   $0x0,-0x29(%ebp)
    1cec:	75 8e                	jne    1c7c <shell+0xf8>
    1cee:	8b 45 f4             	mov    -0xc(%ebp),%eax
    1cf1:	c7 84 85 48 ef ff ff 	movl   $0x0,-0x10b8(%ebp,%eax,4)
    1cf8:	00 00 00 00 
    1cfc:	8b 85 48 ef ff ff    	mov    -0x10b8(%ebp),%eax
    1d02:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    1d09:	00 
    1d0a:	89 04 24             	mov    %eax,(%esp)
    1d0d:	e8 be e6 00 00       	call   103d0 <open>
    1d12:	89 45 d0             	mov    %eax,-0x30(%ebp)
    1d15:	83 7d d0 ff          	cmpl   $0xffffffff,-0x30(%ebp)
    1d19:	75 20                	jne    1d3b <shell+0x1b7>
    1d1b:	0f b6 85 4c ff ff ff 	movzbl -0xb4(%ebp),%eax
    1d22:	84 c0                	test   %al,%al
    1d24:	0f 84 f7 fe ff ff    	je     1c21 <shell+0x9d>
    1d2a:	c7 04 24 46 0b 01 00 	movl   $0x10b46,(%esp)
    1d31:	e8 d2 df 00 00       	call   fd08 <printf>
    1d36:	e9 e7 fe ff ff       	jmp    1c22 <shell+0x9e>
    1d3b:	8b 45 d0             	mov    -0x30(%ebp),%eax
    1d3e:	89 04 24             	mov    %eax,(%esp)
    1d41:	e8 ee e7 00 00       	call   10534 <close>
    1d46:	e8 2d e9 00 00       	call   10678 <fork>
    1d4b:	89 45 cc             	mov    %eax,-0x34(%ebp)
    1d4e:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
    1d52:	74 13                	je     1d67 <shell+0x1e3>
    1d54:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    1d5a:	89 04 24             	mov    %eax,(%esp)
    1d5d:	e8 9a e9 00 00       	call   106fc <wait>
    1d62:	e9 bb fe ff ff       	jmp    1c22 <shell+0x9e>
    1d67:	8b 85 48 ef ff ff    	mov    -0x10b8(%ebp),%eax
    1d6d:	8d 95 48 ef ff ff    	lea    -0x10b8(%ebp),%edx
    1d73:	89 54 24 04          	mov    %edx,0x4(%esp)
    1d77:	89 04 24             	mov    %eax,(%esp)
    1d7a:	e8 62 ea 00 00       	call   107e1 <execv>
    1d7f:	e9 9e fe ff ff       	jmp    1c22 <shell+0x9e>

00001d84 <Init>:
    1d84:	55                   	push   %ebp
    1d85:	89 e5                	mov    %esp,%ebp
    1d87:	53                   	push   %ebx
    1d88:	83 ec 34             	sub    $0x34,%esp
    1d8b:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    1d92:	00 
    1d93:	c7 04 24 60 0b 01 00 	movl   $0x10b60,(%esp)
    1d9a:	e8 31 e6 00 00       	call   103d0 <open>
    1d9f:	89 45 f0             	mov    %eax,-0x10(%ebp)
    1da2:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    1da6:	74 24                	je     1dcc <Init+0x48>
    1da8:	c7 44 24 0c 61 01 00 	movl   $0x161,0xc(%esp)
    1daf:	00 
    1db0:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1db7:	00 
    1db8:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1dbf:	00 
    1dc0:	c7 04 24 1e 0b 01 00 	movl   $0x10b1e,(%esp)
    1dc7:	e8 fe e5 00 00       	call   103ca <assertion_failure>
    1dcc:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    1dd3:	00 
    1dd4:	c7 04 24 60 0b 01 00 	movl   $0x10b60,(%esp)
    1ddb:	e8 f0 e5 00 00       	call   103d0 <open>
    1de0:	89 45 ec             	mov    %eax,-0x14(%ebp)
    1de3:	83 7d ec 01          	cmpl   $0x1,-0x14(%ebp)
    1de7:	74 24                	je     1e0d <Init+0x89>
    1de9:	c7 44 24 0c 63 01 00 	movl   $0x163,0xc(%esp)
    1df0:	00 
    1df1:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1df8:	00 
    1df9:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1e00:	00 
    1e01:	c7 04 24 2c 0b 01 00 	movl   $0x10b2c,(%esp)
    1e08:	e8 bd e5 00 00       	call   103ca <assertion_failure>
    1e0d:	c7 04 24 6a 0b 01 00 	movl   $0x10b6a,(%esp)
    1e14:	e8 95 fa ff ff       	call   18ae <untar>
    1e19:	e8 58 fa ff ff       	call   1876 <get_ticks>
    1e1e:	89 c1                	mov    %eax,%ecx
    1e20:	ba 1f 85 eb 51       	mov    $0x51eb851f,%edx
    1e25:	89 c8                	mov    %ecx,%eax
    1e27:	f7 ea                	imul   %edx
    1e29:	c1 fa 05             	sar    $0x5,%edx
    1e2c:	89 c8                	mov    %ecx,%eax
    1e2e:	c1 f8 1f             	sar    $0x1f,%eax
    1e31:	89 d3                	mov    %edx,%ebx
    1e33:	29 c3                	sub    %eax,%ebx
    1e35:	6b c3 64             	imul   $0x64,%ebx,%eax
    1e38:	89 cb                	mov    %ecx,%ebx
    1e3a:	29 c3                	sub    %eax,%ebx
    1e3c:	e8 35 fa ff ff       	call   1876 <get_ticks>
    1e41:	89 c1                	mov    %eax,%ecx
    1e43:	ba 1f 85 eb 51       	mov    $0x51eb851f,%edx
    1e48:	89 c8                	mov    %ecx,%eax
    1e4a:	f7 ea                	imul   %edx
    1e4c:	c1 fa 05             	sar    $0x5,%edx
    1e4f:	89 c8                	mov    %ecx,%eax
    1e51:	c1 f8 1f             	sar    $0x1f,%eax
    1e54:	89 d1                	mov    %edx,%ecx
    1e56:	29 c1                	sub    %eax,%ecx
    1e58:	89 c8                	mov    %ecx,%eax
    1e5a:	89 5c 24 08          	mov    %ebx,0x8(%esp)
    1e5e:	89 44 24 04          	mov    %eax,0x4(%esp)
    1e62:	c7 04 24 73 0b 01 00 	movl   $0x10b73,(%esp)
    1e69:	e8 9a de 00 00       	call   fd08 <printf>
    1e6e:	c7 44 24 04 87 0b 01 	movl   $0x10b87,0x4(%esp)
    1e75:	00 
    1e76:	c7 04 24 8f 0b 01 00 	movl   $0x10b8f,(%esp)
    1e7d:	e8 86 de 00 00       	call   fd08 <printf>
    1e82:	c7 04 24 a4 0b 01 00 	movl   $0x10ba4,(%esp)
    1e89:	e8 7a de 00 00       	call   fd08 <printf>
    1e8e:	c7 45 dc 60 0b 01 00 	movl   $0x10b60,-0x24(%ebp)
    1e95:	c7 45 e0 b8 0b 01 00 	movl   $0x10bb8,-0x20(%ebp)
    1e9c:	c7 45 e4 c2 0b 01 00 	movl   $0x10bc2,-0x1c(%ebp)
    1ea3:	c7 04 24 cc 0b 01 00 	movl   $0x10bcc,(%esp)
    1eaa:	e8 59 de 00 00       	call   fd08 <printf>
    1eaf:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    1eb6:	eb 5b                	jmp    1f13 <Init+0x18f>
    1eb8:	e8 bb e7 00 00       	call   10678 <fork>
    1ebd:	89 45 e8             	mov    %eax,-0x18(%ebp)
    1ec0:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    1ec4:	75 49                	jne    1f0f <Init+0x18b>
    1ec6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    1ec9:	89 04 24             	mov    %eax,(%esp)
    1ecc:	e8 63 e6 00 00       	call   10534 <close>
    1ed1:	8b 45 ec             	mov    -0x14(%ebp),%eax
    1ed4:	89 04 24             	mov    %eax,(%esp)
    1ed7:	e8 58 e6 00 00       	call   10534 <close>
    1edc:	8b 45 f4             	mov    -0xc(%ebp),%eax
    1edf:	8b 44 85 dc          	mov    -0x24(%ebp,%eax,4),%eax
    1ee3:	89 04 24             	mov    %eax,(%esp)
    1ee6:	e8 99 fc ff ff       	call   1b84 <shell>
    1eeb:	c7 44 24 0c 8f 01 00 	movl   $0x18f,0xc(%esp)
    1ef2:	00 
    1ef3:	c7 44 24 08 5e 0a 01 	movl   $0x10a5e,0x8(%esp)
    1efa:	00 
    1efb:	c7 44 24 04 5e 0a 01 	movl   $0x10a5e,0x4(%esp)
    1f02:	00 
    1f03:	c7 04 24 ce 0b 01 00 	movl   $0x10bce,(%esp)
    1f0a:	e8 bb e4 00 00       	call   103ca <assertion_failure>
    1f0f:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    1f13:	8b 45 f4             	mov    -0xc(%ebp),%eax
    1f16:	83 f8 02             	cmp    $0x2,%eax
    1f19:	76 9d                	jbe    1eb8 <Init+0x134>
    1f1b:	8d 45 d8             	lea    -0x28(%ebp),%eax
    1f1e:	89 04 24             	mov    %eax,(%esp)
    1f21:	e8 d6 e7 00 00       	call   106fc <wait>
    1f26:	eb f3                	jmp    1f1b <Init+0x197>

00001f28 <TestA>:
    1f28:	55                   	push   %ebp
    1f29:	89 e5                	mov    %esp,%ebp
    1f2b:	eb fe                	jmp    1f2b <TestA+0x3>

00001f2d <TestB>:
    1f2d:	55                   	push   %ebp
    1f2e:	89 e5                	mov    %esp,%ebp
    1f30:	eb fe                	jmp    1f30 <TestB+0x3>

00001f32 <TestC>:
    1f32:	55                   	push   %ebp
    1f33:	89 e5                	mov    %esp,%ebp
    1f35:	eb fe                	jmp    1f35 <TestC+0x3>

00001f37 <panic>:
    1f37:	55                   	push   %ebp
    1f38:	89 e5                	mov    %esp,%ebp
    1f3a:	81 ec 28 01 00 00    	sub    $0x128,%esp
    1f40:	8d 45 08             	lea    0x8(%ebp),%eax
    1f43:	83 c0 04             	add    $0x4,%eax
    1f46:	89 45 f4             	mov    %eax,-0xc(%ebp)
    1f49:	8b 45 08             	mov    0x8(%ebp),%eax
    1f4c:	8b 55 f4             	mov    -0xc(%ebp),%edx
    1f4f:	89 54 24 08          	mov    %edx,0x8(%esp)
    1f53:	89 44 24 04          	mov    %eax,0x4(%esp)
    1f57:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
    1f5d:	89 04 24             	mov    %eax,(%esp)
    1f60:	e8 d6 de 00 00       	call   fe3b <vsprintf>
    1f65:	89 45 f0             	mov    %eax,-0x10(%ebp)
    1f68:	8d 85 f0 fe ff ff    	lea    -0x110(%ebp),%eax
    1f6e:	89 44 24 04          	mov    %eax,0x4(%esp)
    1f72:	c7 04 24 d0 0b 01 00 	movl   $0x10bd0,(%esp)
    1f79:	e8 0c de 00 00       	call   fd8a <printl>
    1f7e:	0f 0b                	ud2    
    1f80:	c9                   	leave  
    1f81:	c3                   	ret    
    1f82:	90                   	nop
    1f83:	90                   	nop

00001f84 <clock_handler>:
    1f84:	55                   	push   %ebp
    1f85:	89 e5                	mov    %esp,%ebp
    1f87:	83 ec 18             	sub    $0x18,%esp
    1f8a:	a1 e0 01 05 00       	mov    0x501e0,%eax
    1f8f:	83 c0 01             	add    $0x1,%eax
    1f92:	a3 e0 01 05 00       	mov    %eax,0x501e0
    1f97:	a1 e0 01 05 00       	mov    0x501e0,%eax
    1f9c:	3d cc ab ff 7f       	cmp    $0x7fffabcc,%eax
    1fa1:	7e 0a                	jle    1fad <clock_handler+0x29>
    1fa3:	c7 05 e0 01 05 00 00 	movl   $0x0,0x501e0
    1faa:	00 00 00 
    1fad:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    1fb2:	8b 40 5a             	mov    0x5a(%eax),%eax
    1fb5:	85 c0                	test   %eax,%eax
    1fb7:	74 0e                	je     1fc7 <clock_handler+0x43>
    1fb9:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    1fbe:	8b 50 5a             	mov    0x5a(%eax),%edx
    1fc1:	83 ea 01             	sub    $0x1,%edx
    1fc4:	89 50 5a             	mov    %edx,0x5a(%eax)
    1fc7:	a1 b0 ed 04 00       	mov    0x4edb0,%eax
    1fcc:	85 c0                	test   %eax,%eax
    1fce:	74 0c                	je     1fdc <clock_handler+0x58>
    1fd0:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    1fd7:	e8 97 25 00 00       	call   4573 <inform_int>
    1fdc:	a1 88 d6 04 00       	mov    0x4d688,%eax
    1fe1:	85 c0                	test   %eax,%eax
    1fe3:	75 13                	jne    1ff8 <clock_handler+0x74>
    1fe5:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    1fea:	8b 40 5a             	mov    0x5a(%eax),%eax
    1fed:	85 c0                	test   %eax,%eax
    1fef:	7f 0a                	jg     1ffb <clock_handler+0x77>
    1ff1:	e8 92 11 00 00       	call   3188 <schedule>
    1ff6:	eb 04                	jmp    1ffc <clock_handler+0x78>
    1ff8:	90                   	nop
    1ff9:	eb 01                	jmp    1ffc <clock_handler+0x78>
    1ffb:	90                   	nop
    1ffc:	c9                   	leave  
    1ffd:	c3                   	ret    

00001ffe <milli_delay>:
    1ffe:	55                   	push   %ebp
    1fff:	89 e5                	mov    %esp,%ebp
    2001:	83 ec 18             	sub    $0x18,%esp
    2004:	e8 6d f8 ff ff       	call   1876 <get_ticks>
    2009:	89 45 f4             	mov    %eax,-0xc(%ebp)
    200c:	90                   	nop
    200d:	e8 64 f8 ff ff       	call   1876 <get_ticks>
    2012:	2b 45 f4             	sub    -0xc(%ebp),%eax
    2015:	69 c8 e8 03 00 00    	imul   $0x3e8,%eax,%ecx
    201b:	ba 1f 85 eb 51       	mov    $0x51eb851f,%edx
    2020:	89 c8                	mov    %ecx,%eax
    2022:	f7 ea                	imul   %edx
    2024:	c1 fa 05             	sar    $0x5,%edx
    2027:	89 c8                	mov    %ecx,%eax
    2029:	c1 f8 1f             	sar    $0x1f,%eax
    202c:	89 d1                	mov    %edx,%ecx
    202e:	29 c1                	sub    %eax,%ecx
    2030:	89 c8                	mov    %ecx,%eax
    2032:	3b 45 08             	cmp    0x8(%ebp),%eax
    2035:	7c d6                	jl     200d <milli_delay+0xf>
    2037:	c9                   	leave  
    2038:	c3                   	ret    

00002039 <init_clock>:
    2039:	55                   	push   %ebp
    203a:	89 e5                	mov    %esp,%ebp
    203c:	83 ec 18             	sub    $0x18,%esp
    203f:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    2046:	00 
    2047:	c7 04 24 43 00 00 00 	movl   $0x43,(%esp)
    204e:	e8 2c 2f 00 00       	call   4f7f <out_byte>
    2053:	c7 44 24 04 9b 00 00 	movl   $0x9b,0x4(%esp)
    205a:	00 
    205b:	c7 04 24 40 00 00 00 	movl   $0x40,(%esp)
    2062:	e8 18 2f 00 00       	call   4f7f <out_byte>
    2067:	c7 44 24 04 2e 00 00 	movl   $0x2e,0x4(%esp)
    206e:	00 
    206f:	c7 04 24 40 00 00 00 	movl   $0x40,(%esp)
    2076:	e8 04 2f 00 00       	call   4f7f <out_byte>
    207b:	c7 44 24 04 84 1f 00 	movl   $0x1f84,0x4(%esp)
    2082:	00 
    2083:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    208a:	e8 2d 01 00 00       	call   21bc <put_irq_handler>
    208f:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    2096:	e8 55 2f 00 00       	call   4ff0 <enable_irq>
    209b:	c9                   	leave  
    209c:	c3                   	ret    
    209d:	90                   	nop
    209e:	90                   	nop
    209f:	90                   	nop

000020a0 <init_8259A>:
    20a0:	55                   	push   %ebp
    20a1:	89 e5                	mov    %esp,%ebp
    20a3:	83 ec 28             	sub    $0x28,%esp
    20a6:	c7 44 24 04 11 00 00 	movl   $0x11,0x4(%esp)
    20ad:	00 
    20ae:	c7 04 24 20 00 00 00 	movl   $0x20,(%esp)
    20b5:	e8 c5 2e 00 00       	call   4f7f <out_byte>
    20ba:	c7 44 24 04 11 00 00 	movl   $0x11,0x4(%esp)
    20c1:	00 
    20c2:	c7 04 24 a0 00 00 00 	movl   $0xa0,(%esp)
    20c9:	e8 b1 2e 00 00       	call   4f7f <out_byte>
    20ce:	c7 44 24 04 20 00 00 	movl   $0x20,0x4(%esp)
    20d5:	00 
    20d6:	c7 04 24 21 00 00 00 	movl   $0x21,(%esp)
    20dd:	e8 9d 2e 00 00       	call   4f7f <out_byte>
    20e2:	c7 44 24 04 28 00 00 	movl   $0x28,0x4(%esp)
    20e9:	00 
    20ea:	c7 04 24 a1 00 00 00 	movl   $0xa1,(%esp)
    20f1:	e8 89 2e 00 00       	call   4f7f <out_byte>
    20f6:	c7 44 24 04 04 00 00 	movl   $0x4,0x4(%esp)
    20fd:	00 
    20fe:	c7 04 24 21 00 00 00 	movl   $0x21,(%esp)
    2105:	e8 75 2e 00 00       	call   4f7f <out_byte>
    210a:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    2111:	00 
    2112:	c7 04 24 a1 00 00 00 	movl   $0xa1,(%esp)
    2119:	e8 61 2e 00 00       	call   4f7f <out_byte>
    211e:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    2125:	00 
    2126:	c7 04 24 21 00 00 00 	movl   $0x21,(%esp)
    212d:	e8 4d 2e 00 00       	call   4f7f <out_byte>
    2132:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    2139:	00 
    213a:	c7 04 24 a1 00 00 00 	movl   $0xa1,(%esp)
    2141:	e8 39 2e 00 00       	call   4f7f <out_byte>
    2146:	c7 44 24 04 ff 00 00 	movl   $0xff,0x4(%esp)
    214d:	00 
    214e:	c7 04 24 21 00 00 00 	movl   $0x21,(%esp)
    2155:	e8 25 2e 00 00       	call   4f7f <out_byte>
    215a:	c7 44 24 04 ff 00 00 	movl   $0xff,0x4(%esp)
    2161:	00 
    2162:	c7 04 24 a1 00 00 00 	movl   $0xa1,(%esp)
    2169:	e8 11 2e 00 00       	call   4f7f <out_byte>
    216e:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    2175:	eb 12                	jmp    2189 <init_8259A+0xe9>
    2177:	8b 45 f4             	mov    -0xc(%ebp),%eax
    217a:	c7 04 85 80 0c 05 00 	movl   $0x2191,0x50c80(,%eax,4)
    2181:	91 21 00 00 
    2185:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    2189:	83 7d f4 0f          	cmpl   $0xf,-0xc(%ebp)
    218d:	7e e8                	jle    2177 <init_8259A+0xd7>
    218f:	c9                   	leave  
    2190:	c3                   	ret    

00002191 <spurious_irq>:
    2191:	55                   	push   %ebp
    2192:	89 e5                	mov    %esp,%ebp
    2194:	83 ec 18             	sub    $0x18,%esp
    2197:	c7 04 24 e1 0b 01 00 	movl   $0x10be1,(%esp)
    219e:	e8 4d 2d 00 00       	call   4ef0 <disp_str>
    21a3:	8b 45 08             	mov    0x8(%ebp),%eax
    21a6:	89 04 24             	mov    %eax,(%esp)
    21a9:	e8 f3 31 00 00       	call   53a1 <disp_int>
    21ae:	c7 04 24 f0 0b 01 00 	movl   $0x10bf0,(%esp)
    21b5:	e8 36 2d 00 00       	call   4ef0 <disp_str>
    21ba:	c9                   	leave  
    21bb:	c3                   	ret    

000021bc <put_irq_handler>:
    21bc:	55                   	push   %ebp
    21bd:	89 e5                	mov    %esp,%ebp
    21bf:	83 ec 18             	sub    $0x18,%esp
    21c2:	8b 45 08             	mov    0x8(%ebp),%eax
    21c5:	89 04 24             	mov    %eax,(%esp)
    21c8:	e8 ee 2d 00 00       	call   4fbb <disable_irq>
    21cd:	8b 45 08             	mov    0x8(%ebp),%eax
    21d0:	8b 55 0c             	mov    0xc(%ebp),%edx
    21d3:	89 14 85 80 0c 05 00 	mov    %edx,0x50c80(,%eax,4)
    21da:	c9                   	leave  
    21db:	c3                   	ret    

000021dc <init_prot>:
    21dc:	55                   	push   %ebp
    21dd:	89 e5                	mov    %esp,%ebp
    21df:	83 ec 28             	sub    $0x28,%esp
    21e2:	e8 b9 fe ff ff       	call   20a0 <init_8259A>
    21e7:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    21ee:	00 
    21ef:	c7 44 24 08 37 13 00 	movl   $0x1337,0x8(%esp)
    21f6:	00 
    21f7:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    21fe:	00 
    21ff:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    2206:	e8 bc 05 00 00       	call   27c7 <init_idt_desc>
    220b:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2212:	00 
    2213:	c7 44 24 08 46 13 00 	movl   $0x1346,0x8(%esp)
    221a:	00 
    221b:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2222:	00 
    2223:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    222a:	e8 98 05 00 00       	call   27c7 <init_idt_desc>
    222f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2236:	00 
    2237:	c7 44 24 08 55 13 00 	movl   $0x1355,0x8(%esp)
    223e:	00 
    223f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2246:	00 
    2247:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    224e:	e8 74 05 00 00       	call   27c7 <init_idt_desc>
    2253:	c7 44 24 0c 03 00 00 	movl   $0x3,0xc(%esp)
    225a:	00 
    225b:	c7 44 24 08 64 13 00 	movl   $0x1364,0x8(%esp)
    2262:	00 
    2263:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    226a:	00 
    226b:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    2272:	e8 50 05 00 00       	call   27c7 <init_idt_desc>
    2277:	c7 44 24 0c 03 00 00 	movl   $0x3,0xc(%esp)
    227e:	00 
    227f:	c7 44 24 08 73 13 00 	movl   $0x1373,0x8(%esp)
    2286:	00 
    2287:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    228e:	00 
    228f:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    2296:	e8 2c 05 00 00       	call   27c7 <init_idt_desc>
    229b:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    22a2:	00 
    22a3:	c7 44 24 08 82 13 00 	movl   $0x1382,0x8(%esp)
    22aa:	00 
    22ab:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    22b2:	00 
    22b3:	c7 04 24 05 00 00 00 	movl   $0x5,(%esp)
    22ba:	e8 08 05 00 00       	call   27c7 <init_idt_desc>
    22bf:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    22c6:	00 
    22c7:	c7 44 24 08 91 13 00 	movl   $0x1391,0x8(%esp)
    22ce:	00 
    22cf:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    22d6:	00 
    22d7:	c7 04 24 06 00 00 00 	movl   $0x6,(%esp)
    22de:	e8 e4 04 00 00       	call   27c7 <init_idt_desc>
    22e3:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    22ea:	00 
    22eb:	c7 44 24 08 a0 13 00 	movl   $0x13a0,0x8(%esp)
    22f2:	00 
    22f3:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    22fa:	00 
    22fb:	c7 04 24 07 00 00 00 	movl   $0x7,(%esp)
    2302:	e8 c0 04 00 00       	call   27c7 <init_idt_desc>
    2307:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    230e:	00 
    230f:	c7 44 24 08 af 13 00 	movl   $0x13af,0x8(%esp)
    2316:	00 
    2317:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    231e:	00 
    231f:	c7 04 24 08 00 00 00 	movl   $0x8,(%esp)
    2326:	e8 9c 04 00 00       	call   27c7 <init_idt_desc>
    232b:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2332:	00 
    2333:	c7 44 24 08 b9 13 00 	movl   $0x13b9,0x8(%esp)
    233a:	00 
    233b:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2342:	00 
    2343:	c7 04 24 09 00 00 00 	movl   $0x9,(%esp)
    234a:	e8 78 04 00 00       	call   27c7 <init_idt_desc>
    234f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2356:	00 
    2357:	c7 44 24 08 c8 13 00 	movl   $0x13c8,0x8(%esp)
    235e:	00 
    235f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2366:	00 
    2367:	c7 04 24 0a 00 00 00 	movl   $0xa,(%esp)
    236e:	e8 54 04 00 00       	call   27c7 <init_idt_desc>
    2373:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    237a:	00 
    237b:	c7 44 24 08 d2 13 00 	movl   $0x13d2,0x8(%esp)
    2382:	00 
    2383:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    238a:	00 
    238b:	c7 04 24 0b 00 00 00 	movl   $0xb,(%esp)
    2392:	e8 30 04 00 00       	call   27c7 <init_idt_desc>
    2397:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    239e:	00 
    239f:	c7 44 24 08 dc 13 00 	movl   $0x13dc,0x8(%esp)
    23a6:	00 
    23a7:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    23ae:	00 
    23af:	c7 04 24 0c 00 00 00 	movl   $0xc,(%esp)
    23b6:	e8 0c 04 00 00       	call   27c7 <init_idt_desc>
    23bb:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    23c2:	00 
    23c3:	c7 44 24 08 e6 13 00 	movl   $0x13e6,0x8(%esp)
    23ca:	00 
    23cb:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    23d2:	00 
    23d3:	c7 04 24 0d 00 00 00 	movl   $0xd,(%esp)
    23da:	e8 e8 03 00 00       	call   27c7 <init_idt_desc>
    23df:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    23e6:	00 
    23e7:	c7 44 24 08 e0 c1 00 	movl   $0xc1e0,0x8(%esp)
    23ee:	00 
    23ef:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    23f6:	00 
    23f7:	c7 04 24 0e 00 00 00 	movl   $0xe,(%esp)
    23fe:	e8 c4 03 00 00       	call   27c7 <init_idt_desc>
    2403:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    240a:	00 
    240b:	c7 44 24 08 f0 13 00 	movl   $0x13f0,0x8(%esp)
    2412:	00 
    2413:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    241a:	00 
    241b:	c7 04 24 10 00 00 00 	movl   $0x10,(%esp)
    2422:	e8 a0 03 00 00       	call   27c7 <init_idt_desc>
    2427:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    242e:	00 
    242f:	c7 44 24 08 40 10 00 	movl   $0x1040,0x8(%esp)
    2436:	00 
    2437:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    243e:	00 
    243f:	c7 04 24 20 00 00 00 	movl   $0x20,(%esp)
    2446:	e8 7c 03 00 00       	call   27c7 <init_idt_desc>
    244b:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2452:	00 
    2453:	c7 44 24 08 70 10 00 	movl   $0x1070,0x8(%esp)
    245a:	00 
    245b:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2462:	00 
    2463:	c7 04 24 21 00 00 00 	movl   $0x21,(%esp)
    246a:	e8 58 03 00 00       	call   27c7 <init_idt_desc>
    246f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2476:	00 
    2477:	c7 44 24 08 a0 10 00 	movl   $0x10a0,0x8(%esp)
    247e:	00 
    247f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2486:	00 
    2487:	c7 04 24 22 00 00 00 	movl   $0x22,(%esp)
    248e:	e8 34 03 00 00       	call   27c7 <init_idt_desc>
    2493:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    249a:	00 
    249b:	c7 44 24 08 d0 10 00 	movl   $0x10d0,0x8(%esp)
    24a2:	00 
    24a3:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    24aa:	00 
    24ab:	c7 04 24 23 00 00 00 	movl   $0x23,(%esp)
    24b2:	e8 10 03 00 00       	call   27c7 <init_idt_desc>
    24b7:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    24be:	00 
    24bf:	c7 44 24 08 00 11 00 	movl   $0x1100,0x8(%esp)
    24c6:	00 
    24c7:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    24ce:	00 
    24cf:	c7 04 24 24 00 00 00 	movl   $0x24,(%esp)
    24d6:	e8 ec 02 00 00       	call   27c7 <init_idt_desc>
    24db:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    24e2:	00 
    24e3:	c7 44 24 08 30 11 00 	movl   $0x1130,0x8(%esp)
    24ea:	00 
    24eb:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    24f2:	00 
    24f3:	c7 04 24 25 00 00 00 	movl   $0x25,(%esp)
    24fa:	e8 c8 02 00 00       	call   27c7 <init_idt_desc>
    24ff:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2506:	00 
    2507:	c7 44 24 08 60 11 00 	movl   $0x1160,0x8(%esp)
    250e:	00 
    250f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2516:	00 
    2517:	c7 04 24 26 00 00 00 	movl   $0x26,(%esp)
    251e:	e8 a4 02 00 00       	call   27c7 <init_idt_desc>
    2523:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    252a:	00 
    252b:	c7 44 24 08 90 11 00 	movl   $0x1190,0x8(%esp)
    2532:	00 
    2533:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    253a:	00 
    253b:	c7 04 24 27 00 00 00 	movl   $0x27,(%esp)
    2542:	e8 80 02 00 00       	call   27c7 <init_idt_desc>
    2547:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    254e:	00 
    254f:	c7 44 24 08 c0 11 00 	movl   $0x11c0,0x8(%esp)
    2556:	00 
    2557:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    255e:	00 
    255f:	c7 04 24 28 00 00 00 	movl   $0x28,(%esp)
    2566:	e8 5c 02 00 00       	call   27c7 <init_idt_desc>
    256b:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2572:	00 
    2573:	c7 44 24 08 f0 11 00 	movl   $0x11f0,0x8(%esp)
    257a:	00 
    257b:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2582:	00 
    2583:	c7 04 24 29 00 00 00 	movl   $0x29,(%esp)
    258a:	e8 38 02 00 00       	call   27c7 <init_idt_desc>
    258f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2596:	00 
    2597:	c7 44 24 08 20 12 00 	movl   $0x1220,0x8(%esp)
    259e:	00 
    259f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    25a6:	00 
    25a7:	c7 04 24 2a 00 00 00 	movl   $0x2a,(%esp)
    25ae:	e8 14 02 00 00       	call   27c7 <init_idt_desc>
    25b3:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    25ba:	00 
    25bb:	c7 44 24 08 50 12 00 	movl   $0x1250,0x8(%esp)
    25c2:	00 
    25c3:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    25ca:	00 
    25cb:	c7 04 24 2b 00 00 00 	movl   $0x2b,(%esp)
    25d2:	e8 f0 01 00 00       	call   27c7 <init_idt_desc>
    25d7:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    25de:	00 
    25df:	c7 44 24 08 80 12 00 	movl   $0x1280,0x8(%esp)
    25e6:	00 
    25e7:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    25ee:	00 
    25ef:	c7 04 24 2c 00 00 00 	movl   $0x2c,(%esp)
    25f6:	e8 cc 01 00 00       	call   27c7 <init_idt_desc>
    25fb:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2602:	00 
    2603:	c7 44 24 08 b0 12 00 	movl   $0x12b0,0x8(%esp)
    260a:	00 
    260b:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2612:	00 
    2613:	c7 04 24 2d 00 00 00 	movl   $0x2d,(%esp)
    261a:	e8 a8 01 00 00       	call   27c7 <init_idt_desc>
    261f:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    2626:	00 
    2627:	c7 44 24 08 e0 12 00 	movl   $0x12e0,0x8(%esp)
    262e:	00 
    262f:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    2636:	00 
    2637:	c7 04 24 2e 00 00 00 	movl   $0x2e,(%esp)
    263e:	e8 84 01 00 00       	call   27c7 <init_idt_desc>
    2643:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    264a:	00 
    264b:	c7 44 24 08 10 13 00 	movl   $0x1310,0x8(%esp)
    2652:	00 
    2653:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    265a:	00 
    265b:	c7 04 24 2f 00 00 00 	movl   $0x2f,(%esp)
    2662:	e8 60 01 00 00       	call   27c7 <init_idt_desc>
    2667:	c7 44 24 0c 03 00 00 	movl   $0x3,0xc(%esp)
    266e:	00 
    266f:	c7 44 24 08 48 14 00 	movl   $0x1448,0x8(%esp)
    2676:	00 
    2677:	c7 44 24 04 8e 00 00 	movl   $0x8e,0x4(%esp)
    267e:	00 
    267f:	c7 04 24 90 00 00 00 	movl   $0x90,(%esp)
    2686:	e8 3c 01 00 00       	call   27c7 <init_idt_desc>
    268b:	c7 44 24 08 68 00 00 	movl   $0x68,0x8(%esp)
    2692:	00 
    2693:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    269a:	00 
    269b:	c7 04 24 a0 e7 04 00 	movl   $0x4e7a0,(%esp)
    26a2:	e8 78 da 00 00       	call   1011f <memset>
    26a7:	c7 05 a8 e7 04 00 10 	movl   $0x10,0x4e7a8
    26ae:	00 00 00 
    26b1:	c7 04 24 10 00 00 00 	movl   $0x10,(%esp)
    26b8:	e8 7a 01 00 00       	call   2837 <seg2linear>
    26bd:	ba a0 e7 04 00       	mov    $0x4e7a0,%edx
    26c2:	01 d0                	add    %edx,%eax
    26c4:	c7 44 24 0c 89 00 00 	movl   $0x89,0xc(%esp)
    26cb:	00 
    26cc:	c7 44 24 08 67 00 00 	movl   $0x67,0x8(%esp)
    26d3:	00 
    26d4:	89 44 24 04          	mov    %eax,0x4(%esp)
    26d8:	c7 04 24 c0 d6 04 00 	movl   $0x4d6c0,(%esp)
    26df:	e8 a2 01 00 00       	call   2886 <init_desc>
    26e4:	66 c7 05 06 e8 04 00 	movw   $0x68,0x4e806
    26eb:	68 00 
    26ed:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    26f4:	e9 c2 00 00 00       	jmp    27bb <init_prot+0x5df>
    26f9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    26fc:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    2702:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    2707:	c7 44 24 08 36 03 00 	movl   $0x336,0x8(%esp)
    270e:	00 
    270f:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    2716:	00 
    2717:	89 04 24             	mov    %eax,(%esp)
    271a:	e8 00 da 00 00       	call   1011f <memset>
    271f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    2722:	c1 e0 03             	shl    $0x3,%eax
    2725:	8d 50 28             	lea    0x28(%eax),%edx
    2728:	8b 45 f4             	mov    -0xc(%ebp),%eax
    272b:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    2731:	05 00 0d 05 00       	add    $0x50d00,%eax
    2736:	66 89 50 08          	mov    %dx,0x8(%eax)
    273a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    273d:	83 c0 05             	add    $0x5,%eax
    2740:	83 f8 7f             	cmp    $0x7f,%eax
    2743:	7e 24                	jle    2769 <init_prot+0x58d>
    2745:	c7 44 24 0c c1 00 00 	movl   $0xc1,0xc(%esp)
    274c:	00 
    274d:	c7 44 24 08 04 0c 01 	movl   $0x10c04,0x8(%esp)
    2754:	00 
    2755:	c7 44 24 04 04 0c 01 	movl   $0x10c04,0x4(%esp)
    275c:	00 
    275d:	c7 04 24 10 0c 01 00 	movl   $0x10c10,(%esp)
    2764:	e8 61 dc 00 00       	call   103ca <assertion_failure>
    2769:	c7 04 24 10 00 00 00 	movl   $0x10,(%esp)
    2770:	e8 c2 00 00 00       	call   2837 <seg2linear>
    2775:	8b 55 f4             	mov    -0xc(%ebp),%edx
    2778:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    277e:	83 c2 40             	add    $0x40,%edx
    2781:	81 c2 c0 0c 05 00    	add    $0x50cc0,%edx
    2787:	83 c2 0a             	add    $0xa,%edx
    278a:	8d 14 10             	lea    (%eax,%edx,1),%edx
    278d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    2790:	83 c0 05             	add    $0x5,%eax
    2793:	c1 e0 03             	shl    $0x3,%eax
    2796:	05 a0 d6 04 00       	add    $0x4d6a0,%eax
    279b:	c7 44 24 0c 82 00 00 	movl   $0x82,0xc(%esp)
    27a2:	00 
    27a3:	c7 44 24 08 0f 00 00 	movl   $0xf,0x8(%esp)
    27aa:	00 
    27ab:	89 54 24 04          	mov    %edx,0x4(%esp)
    27af:	89 04 24             	mov    %eax,(%esp)
    27b2:	e8 cf 00 00 00       	call   2886 <init_desc>
    27b7:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    27bb:	83 7d f4 29          	cmpl   $0x29,-0xc(%ebp)
    27bf:	0f 8e 34 ff ff ff    	jle    26f9 <init_prot+0x51d>
    27c5:	c9                   	leave  
    27c6:	c3                   	ret    

000027c7 <init_idt_desc>:
    27c7:	55                   	push   %ebp
    27c8:	89 e5                	mov    %esp,%ebp
    27ca:	83 ec 1c             	sub    $0x1c,%esp
    27cd:	8b 4d 08             	mov    0x8(%ebp),%ecx
    27d0:	8b 55 0c             	mov    0xc(%ebp),%edx
    27d3:	8b 45 14             	mov    0x14(%ebp),%eax
    27d6:	88 4d ec             	mov    %cl,-0x14(%ebp)
    27d9:	88 55 e8             	mov    %dl,-0x18(%ebp)
    27dc:	88 45 e4             	mov    %al,-0x1c(%ebp)
    27df:	0f b6 45 ec          	movzbl -0x14(%ebp),%eax
    27e3:	c1 e0 03             	shl    $0x3,%eax
    27e6:	05 00 02 05 00       	add    $0x50200,%eax
    27eb:	89 45 fc             	mov    %eax,-0x4(%ebp)
    27ee:	8b 45 10             	mov    0x10(%ebp),%eax
    27f1:	89 45 f8             	mov    %eax,-0x8(%ebp)
    27f4:	8b 45 f8             	mov    -0x8(%ebp),%eax
    27f7:	89 c2                	mov    %eax,%edx
    27f9:	8b 45 fc             	mov    -0x4(%ebp),%eax
    27fc:	66 89 10             	mov    %dx,(%eax)
    27ff:	8b 45 fc             	mov    -0x4(%ebp),%eax
    2802:	66 c7 40 02 08 00    	movw   $0x8,0x2(%eax)
    2808:	8b 45 fc             	mov    -0x4(%ebp),%eax
    280b:	c6 40 04 00          	movb   $0x0,0x4(%eax)
    280f:	0f b6 45 e4          	movzbl -0x1c(%ebp),%eax
    2813:	c1 e0 05             	shl    $0x5,%eax
    2816:	89 c2                	mov    %eax,%edx
    2818:	0f b6 45 e8          	movzbl -0x18(%ebp),%eax
    281c:	09 d0                	or     %edx,%eax
    281e:	89 c2                	mov    %eax,%edx
    2820:	8b 45 fc             	mov    -0x4(%ebp),%eax
    2823:	88 50 05             	mov    %dl,0x5(%eax)
    2826:	8b 45 f8             	mov    -0x8(%ebp),%eax
    2829:	c1 e8 10             	shr    $0x10,%eax
    282c:	89 c2                	mov    %eax,%edx
    282e:	8b 45 fc             	mov    -0x4(%ebp),%eax
    2831:	66 89 50 06          	mov    %dx,0x6(%eax)
    2835:	c9                   	leave  
    2836:	c3                   	ret    

00002837 <seg2linear>:
    2837:	55                   	push   %ebp
    2838:	89 e5                	mov    %esp,%ebp
    283a:	83 ec 14             	sub    $0x14,%esp
    283d:	8b 45 08             	mov    0x8(%ebp),%eax
    2840:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
    2844:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
    2848:	66 c1 e8 03          	shr    $0x3,%ax
    284c:	0f b7 c0             	movzwl %ax,%eax
    284f:	c1 e0 03             	shl    $0x3,%eax
    2852:	05 a0 d6 04 00       	add    $0x4d6a0,%eax
    2857:	89 45 fc             	mov    %eax,-0x4(%ebp)
    285a:	8b 45 fc             	mov    -0x4(%ebp),%eax
    285d:	0f b6 40 07          	movzbl 0x7(%eax),%eax
    2861:	0f b6 c0             	movzbl %al,%eax
    2864:	89 c2                	mov    %eax,%edx
    2866:	c1 e2 18             	shl    $0x18,%edx
    2869:	8b 45 fc             	mov    -0x4(%ebp),%eax
    286c:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    2870:	0f b6 c0             	movzbl %al,%eax
    2873:	c1 e0 10             	shl    $0x10,%eax
    2876:	09 c2                	or     %eax,%edx
    2878:	8b 45 fc             	mov    -0x4(%ebp),%eax
    287b:	0f b7 40 02          	movzwl 0x2(%eax),%eax
    287f:	0f b7 c0             	movzwl %ax,%eax
    2882:	09 d0                	or     %edx,%eax
    2884:	c9                   	leave  
    2885:	c3                   	ret    

00002886 <init_desc>:
    2886:	55                   	push   %ebp
    2887:	89 e5                	mov    %esp,%ebp
    2889:	83 ec 04             	sub    $0x4,%esp
    288c:	8b 45 14             	mov    0x14(%ebp),%eax
    288f:	66 89 45 fc          	mov    %ax,-0x4(%ebp)
    2893:	8b 45 10             	mov    0x10(%ebp),%eax
    2896:	89 c2                	mov    %eax,%edx
    2898:	8b 45 08             	mov    0x8(%ebp),%eax
    289b:	66 89 10             	mov    %dx,(%eax)
    289e:	8b 45 0c             	mov    0xc(%ebp),%eax
    28a1:	89 c2                	mov    %eax,%edx
    28a3:	8b 45 08             	mov    0x8(%ebp),%eax
    28a6:	66 89 50 02          	mov    %dx,0x2(%eax)
    28aa:	8b 45 0c             	mov    0xc(%ebp),%eax
    28ad:	c1 e8 10             	shr    $0x10,%eax
    28b0:	89 c2                	mov    %eax,%edx
    28b2:	8b 45 08             	mov    0x8(%ebp),%eax
    28b5:	88 50 04             	mov    %dl,0x4(%eax)
    28b8:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
    28bc:	89 c2                	mov    %eax,%edx
    28be:	8b 45 08             	mov    0x8(%ebp),%eax
    28c1:	88 50 05             	mov    %dl,0x5(%eax)
    28c4:	8b 45 10             	mov    0x10(%ebp),%eax
    28c7:	c1 e8 10             	shr    $0x10,%eax
    28ca:	89 c2                	mov    %eax,%edx
    28cc:	83 e2 0f             	and    $0xf,%edx
    28cf:	0f b7 45 fc          	movzwl -0x4(%ebp),%eax
    28d3:	66 c1 e8 08          	shr    $0x8,%ax
    28d7:	83 e0 f0             	and    $0xfffffff0,%eax
    28da:	09 c2                	or     %eax,%edx
    28dc:	8b 45 08             	mov    0x8(%ebp),%eax
    28df:	88 50 06             	mov    %dl,0x6(%eax)
    28e2:	8b 45 0c             	mov    0xc(%ebp),%eax
    28e5:	c1 e8 18             	shr    $0x18,%eax
    28e8:	89 c2                	mov    %eax,%edx
    28ea:	8b 45 08             	mov    0x8(%ebp),%eax
    28ed:	88 50 07             	mov    %dl,0x7(%eax)
    28f0:	c9                   	leave  
    28f1:	c3                   	ret    

000028f2 <exception_handler>:
    28f2:	55                   	push   %ebp
    28f3:	89 e5                	mov    %esp,%ebp
    28f5:	57                   	push   %edi
    28f6:	53                   	push   %ebx
    28f7:	81 ec 20 05 00 00    	sub    $0x520,%esp
    28fd:	c7 45 f0 74 00 00 00 	movl   $0x74,-0x10(%ebp)
    2904:	8d 9d f0 fa ff ff    	lea    -0x510(%ebp),%ebx
    290a:	b8 00 00 00 00       	mov    $0x0,%eax
    290f:	ba 40 01 00 00       	mov    $0x140,%edx
    2914:	89 df                	mov    %ebx,%edi
    2916:	89 d1                	mov    %edx,%ecx
    2918:	f3 ab                	rep stos %eax,%es:(%edi)
    291a:	c7 85 f0 fa ff ff 23 	movl   $0x20454423,-0x510(%ebp)
    2921:	44 45 20 
    2924:	c7 85 f4 fa ff ff 44 	movl   $0x69766944,-0x50c(%ebp)
    292b:	69 76 69 
    292e:	c7 85 f8 fa ff ff 64 	movl   $0x45206564,-0x508(%ebp)
    2935:	65 20 45 
    2938:	c7 85 fc fa ff ff 72 	movl   $0x726f7272,-0x504(%ebp)
    293f:	72 6f 72 
    2942:	c7 85 00 fb ff ff 00 	movl   $0x0,-0x500(%ebp)
    2949:	00 00 00 
    294c:	8d 9d 04 fb ff ff    	lea    -0x4fc(%ebp),%ebx
    2952:	b8 00 00 00 00       	mov    $0x0,%eax
    2957:	ba 0b 00 00 00       	mov    $0xb,%edx
    295c:	89 df                	mov    %ebx,%edi
    295e:	89 d1                	mov    %edx,%ecx
    2960:	f3 ab                	rep stos %eax,%es:(%edi)
    2962:	c7 85 30 fb ff ff 23 	movl   $0x20424423,-0x4d0(%ebp)
    2969:	44 42 20 
    296c:	c7 85 34 fb ff ff 52 	movl   $0x45534552,-0x4cc(%ebp)
    2973:	45 53 45 
    2976:	c7 85 38 fb ff ff 52 	movl   $0x44455652,-0x4c8(%ebp)
    297d:	56 45 44 
    2980:	c7 85 3c fb ff ff 00 	movl   $0x0,-0x4c4(%ebp)
    2987:	00 00 00 
    298a:	8d 9d 40 fb ff ff    	lea    -0x4c0(%ebp),%ebx
    2990:	b8 00 00 00 00       	mov    $0x0,%eax
    2995:	ba 0c 00 00 00       	mov    $0xc,%edx
    299a:	89 df                	mov    %ebx,%edi
    299c:	89 d1                	mov    %edx,%ecx
    299e:	f3 ab                	rep stos %eax,%es:(%edi)
    29a0:	c7 85 70 fb ff ff e2 	movl   $0x209480e2,-0x490(%ebp)
    29a7:	80 94 20 
    29aa:	c7 85 74 fb ff ff 20 	movl   $0x494d4e20,-0x48c(%ebp)
    29b1:	4e 4d 49 
    29b4:	c7 85 78 fb ff ff 20 	movl   $0x746e4920,-0x488(%ebp)
    29bb:	49 6e 74 
    29be:	c7 85 7c fb ff ff 65 	movl   $0x75727265,-0x484(%ebp)
    29c5:	72 72 75 
    29c8:	c7 85 80 fb ff ff 70 	movl   $0x7470,-0x480(%ebp)
    29cf:	74 00 00 
    29d2:	8d 9d 84 fb ff ff    	lea    -0x47c(%ebp),%ebx
    29d8:	b8 00 00 00 00       	mov    $0x0,%eax
    29dd:	ba 0b 00 00 00       	mov    $0xb,%edx
    29e2:	89 df                	mov    %ebx,%edi
    29e4:	89 d1                	mov    %edx,%ecx
    29e6:	f3 ab                	rep stos %eax,%es:(%edi)
    29e8:	c7 85 b0 fb ff ff 23 	movl   $0x20504223,-0x450(%ebp)
    29ef:	42 50 20 
    29f2:	c7 85 b4 fb ff ff 42 	movl   $0x61657242,-0x44c(%ebp)
    29f9:	72 65 61 
    29fc:	c7 85 b8 fb ff ff 6b 	movl   $0x696f706b,-0x448(%ebp)
    2a03:	70 6f 69 
    2a06:	c7 85 bc fb ff ff 6e 	movl   $0x746e,-0x444(%ebp)
    2a0d:	74 00 00 
    2a10:	8d 9d c0 fb ff ff    	lea    -0x440(%ebp),%ebx
    2a16:	b8 00 00 00 00       	mov    $0x0,%eax
    2a1b:	ba 0c 00 00 00       	mov    $0xc,%edx
    2a20:	89 df                	mov    %ebx,%edi
    2a22:	89 d1                	mov    %edx,%ecx
    2a24:	f3 ab                	rep stos %eax,%es:(%edi)
    2a26:	c7 85 f0 fb ff ff 23 	movl   $0x20464f23,-0x410(%ebp)
    2a2d:	4f 46 20 
    2a30:	c7 85 f4 fb ff ff 4f 	movl   $0x7265764f,-0x40c(%ebp)
    2a37:	76 65 72 
    2a3a:	c7 85 f8 fb ff ff 66 	movl   $0x776f6c66,-0x408(%ebp)
    2a41:	6c 6f 77 
    2a44:	c7 85 fc fb ff ff 00 	movl   $0x0,-0x404(%ebp)
    2a4b:	00 00 00 
    2a4e:	8d 9d 00 fc ff ff    	lea    -0x400(%ebp),%ebx
    2a54:	b8 00 00 00 00       	mov    $0x0,%eax
    2a59:	ba 0c 00 00 00       	mov    $0xc,%edx
    2a5e:	89 df                	mov    %ebx,%edi
    2a60:	89 d1                	mov    %edx,%ecx
    2a62:	f3 ab                	rep stos %eax,%es:(%edi)
    2a64:	c7 85 30 fc ff ff 23 	movl   $0x20524223,-0x3d0(%ebp)
    2a6b:	42 52 20 
    2a6e:	c7 85 34 fc ff ff 42 	movl   $0x4e554f42,-0x3cc(%ebp)
    2a75:	4f 55 4e 
    2a78:	c7 85 38 fc ff ff 44 	movl   $0x61522044,-0x3c8(%ebp)
    2a7f:	20 52 61 
    2a82:	c7 85 3c fc ff ff 6e 	movl   $0x2065676e,-0x3c4(%ebp)
    2a89:	67 65 20 
    2a8c:	c7 85 40 fc ff ff 45 	movl   $0x65637845,-0x3c0(%ebp)
    2a93:	78 63 65 
    2a96:	c7 85 44 fc ff ff 65 	movl   $0x64656465,-0x3bc(%ebp)
    2a9d:	64 65 64 
    2aa0:	c7 85 48 fc ff ff 00 	movl   $0x0,-0x3b8(%ebp)
    2aa7:	00 00 00 
    2aaa:	8d 9d 4c fc ff ff    	lea    -0x3b4(%ebp),%ebx
    2ab0:	b8 00 00 00 00       	mov    $0x0,%eax
    2ab5:	ba 09 00 00 00       	mov    $0x9,%edx
    2aba:	89 df                	mov    %ebx,%edi
    2abc:	89 d1                	mov    %edx,%ecx
    2abe:	f3 ab                	rep stos %eax,%es:(%edi)
    2ac0:	c7 85 70 fc ff ff 23 	movl   $0x20445523,-0x390(%ebp)
    2ac7:	55 44 20 
    2aca:	c7 85 74 fc ff ff 49 	movl   $0x61766e49,-0x38c(%ebp)
    2ad1:	6e 76 61 
    2ad4:	c7 85 78 fc ff ff 6c 	movl   $0x2064696c,-0x388(%ebp)
    2adb:	69 64 20 
    2ade:	c7 85 7c fc ff ff 4f 	movl   $0x6f63704f,-0x384(%ebp)
    2ae5:	70 63 6f 
    2ae8:	c7 85 80 fc ff ff 64 	movl   $0x28206564,-0x380(%ebp)
    2aef:	65 20 28 
    2af2:	c7 85 84 fc ff ff 55 	movl   $0x65646e55,-0x37c(%ebp)
    2af9:	6e 64 65 
    2afc:	c7 85 88 fc ff ff 66 	movl   $0x656e6966,-0x378(%ebp)
    2b03:	69 6e 65 
    2b06:	c7 85 8c fc ff ff 64 	movl   $0x704f2064,-0x374(%ebp)
    2b0d:	20 4f 70 
    2b10:	c7 85 90 fc ff ff 63 	movl   $0x65646f63,-0x370(%ebp)
    2b17:	6f 64 65 
    2b1a:	c7 85 94 fc ff ff 29 	movl   $0x29,-0x36c(%ebp)
    2b21:	00 00 00 
    2b24:	8d 95 98 fc ff ff    	lea    -0x368(%ebp),%edx
    2b2a:	b9 00 00 00 00       	mov    $0x0,%ecx
    2b2f:	b8 18 00 00 00       	mov    $0x18,%eax
    2b34:	89 c3                	mov    %eax,%ebx
    2b36:	83 e3 fc             	and    $0xfffffffc,%ebx
    2b39:	b8 00 00 00 00       	mov    $0x0,%eax
    2b3e:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
    2b41:	83 c0 04             	add    $0x4,%eax
    2b44:	39 d8                	cmp    %ebx,%eax
    2b46:	72 f6                	jb     2b3e <exception_handler+0x24c>
    2b48:	01 c2                	add    %eax,%edx
    2b4a:	c7 85 b0 fc ff ff 23 	movl   $0x204d4e23,-0x350(%ebp)
    2b51:	4e 4d 20 
    2b54:	c7 85 b4 fc ff ff 44 	movl   $0x69766544,-0x34c(%ebp)
    2b5b:	65 76 69 
    2b5e:	c7 85 b8 fc ff ff 63 	movl   $0x4e206563,-0x348(%ebp)
    2b65:	65 20 4e 
    2b68:	c7 85 bc fc ff ff 6f 	movl   $0x4120746f,-0x344(%ebp)
    2b6f:	74 20 41 
    2b72:	c7 85 c0 fc ff ff 76 	movl   $0x6c696176,-0x340(%ebp)
    2b79:	61 69 6c 
    2b7c:	c7 85 c4 fc ff ff 61 	movl   $0x656c6261,-0x33c(%ebp)
    2b83:	62 6c 65 
    2b86:	c7 85 c8 fc ff ff 20 	movl   $0x6f4e2820,-0x338(%ebp)
    2b8d:	28 4e 6f 
    2b90:	c7 85 cc fc ff ff 20 	movl   $0x74614d20,-0x334(%ebp)
    2b97:	4d 61 74 
    2b9a:	c7 85 d0 fc ff ff 68 	movl   $0x6f432068,-0x330(%ebp)
    2ba1:	20 43 6f 
    2ba4:	c7 85 d4 fc ff ff 70 	movl   $0x636f7270,-0x32c(%ebp)
    2bab:	72 6f 63 
    2bae:	c7 85 d8 fc ff ff 65 	movl   $0x6f737365,-0x328(%ebp)
    2bb5:	73 73 6f 
    2bb8:	c7 85 dc fc ff ff 72 	movl   $0x2972,-0x324(%ebp)
    2bbf:	29 00 00 
    2bc2:	c7 85 e0 fc ff ff 00 	movl   $0x0,-0x320(%ebp)
    2bc9:	00 00 00 
    2bcc:	c7 85 e4 fc ff ff 00 	movl   $0x0,-0x31c(%ebp)
    2bd3:	00 00 00 
    2bd6:	c7 85 e8 fc ff ff 00 	movl   $0x0,-0x318(%ebp)
    2bdd:	00 00 00 
    2be0:	c7 85 ec fc ff ff 00 	movl   $0x0,-0x314(%ebp)
    2be7:	00 00 00 
    2bea:	c7 85 f0 fc ff ff 23 	movl   $0x20464423,-0x310(%ebp)
    2bf1:	44 46 20 
    2bf4:	c7 85 f4 fc ff ff 44 	movl   $0x62756f44,-0x30c(%ebp)
    2bfb:	6f 75 62 
    2bfe:	c7 85 f8 fc ff ff 6c 	movl   $0x4620656c,-0x308(%ebp)
    2c05:	65 20 46 
    2c08:	c7 85 fc fc ff ff 61 	movl   $0x746c7561,-0x304(%ebp)
    2c0f:	75 6c 74 
    2c12:	c7 85 00 fd ff ff 00 	movl   $0x0,-0x300(%ebp)
    2c19:	00 00 00 
    2c1c:	8d 9d 04 fd ff ff    	lea    -0x2fc(%ebp),%ebx
    2c22:	b8 00 00 00 00       	mov    $0x0,%eax
    2c27:	ba 0b 00 00 00       	mov    $0xb,%edx
    2c2c:	89 df                	mov    %ebx,%edi
    2c2e:	89 d1                	mov    %edx,%ecx
    2c30:	f3 ab                	rep stos %eax,%es:(%edi)
    2c32:	c7 85 30 fd ff ff 20 	movl   $0x20202020,-0x2d0(%ebp)
    2c39:	20 20 20 
    2c3c:	c7 85 34 fd ff ff 43 	movl   $0x72706f43,-0x2cc(%ebp)
    2c43:	6f 70 72 
    2c46:	c7 85 38 fd ff ff 6f 	movl   $0x7365636f,-0x2c8(%ebp)
    2c4d:	63 65 73 
    2c50:	c7 85 3c fd ff ff 73 	movl   $0x20726f73,-0x2c4(%ebp)
    2c57:	6f 72 20 
    2c5a:	c7 85 40 fd ff ff 53 	movl   $0x6d676553,-0x2c0(%ebp)
    2c61:	65 67 6d 
    2c64:	c7 85 44 fd ff ff 65 	movl   $0x20746e65,-0x2bc(%ebp)
    2c6b:	6e 74 20 
    2c6e:	c7 85 48 fd ff ff 4f 	movl   $0x7265764f,-0x2b8(%ebp)
    2c75:	76 65 72 
    2c78:	c7 85 4c fd ff ff 72 	movl   $0x206e7572,-0x2b4(%ebp)
    2c7f:	75 6e 20 
    2c82:	c7 85 50 fd ff ff 28 	movl   $0x73657228,-0x2b0(%ebp)
    2c89:	72 65 73 
    2c8c:	c7 85 54 fd ff ff 65 	movl   $0x65767265,-0x2ac(%ebp)
    2c93:	72 76 65 
    2c96:	c7 85 58 fd ff ff 64 	movl   $0x2964,-0x2a8(%ebp)
    2c9d:	29 00 00 
    2ca0:	c7 85 5c fd ff ff 00 	movl   $0x0,-0x2a4(%ebp)
    2ca7:	00 00 00 
    2caa:	c7 85 60 fd ff ff 00 	movl   $0x0,-0x2a0(%ebp)
    2cb1:	00 00 00 
    2cb4:	c7 85 64 fd ff ff 00 	movl   $0x0,-0x29c(%ebp)
    2cbb:	00 00 00 
    2cbe:	c7 85 68 fd ff ff 00 	movl   $0x0,-0x298(%ebp)
    2cc5:	00 00 00 
    2cc8:	c7 85 6c fd ff ff 00 	movl   $0x0,-0x294(%ebp)
    2ccf:	00 00 00 
    2cd2:	c7 85 70 fd ff ff 23 	movl   $0x20535423,-0x290(%ebp)
    2cd9:	54 53 20 
    2cdc:	c7 85 74 fd ff ff 49 	movl   $0x61766e49,-0x28c(%ebp)
    2ce3:	6e 76 61 
    2ce6:	c7 85 78 fd ff ff 6c 	movl   $0x2064696c,-0x288(%ebp)
    2ced:	69 64 20 
    2cf0:	c7 85 7c fd ff ff 54 	movl   $0x535354,-0x284(%ebp)
    2cf7:	53 53 00 
    2cfa:	8d 9d 80 fd ff ff    	lea    -0x280(%ebp),%ebx
    2d00:	b8 00 00 00 00       	mov    $0x0,%eax
    2d05:	ba 0c 00 00 00       	mov    $0xc,%edx
    2d0a:	89 df                	mov    %ebx,%edi
    2d0c:	89 d1                	mov    %edx,%ecx
    2d0e:	f3 ab                	rep stos %eax,%es:(%edi)
    2d10:	c7 85 b0 fd ff ff 23 	movl   $0x20504e23,-0x250(%ebp)
    2d17:	4e 50 20 
    2d1a:	c7 85 b4 fd ff ff 53 	movl   $0x6d676553,-0x24c(%ebp)
    2d21:	65 67 6d 
    2d24:	c7 85 b8 fd ff ff 65 	movl   $0x20746e65,-0x248(%ebp)
    2d2b:	6e 74 20 
    2d2e:	c7 85 bc fd ff ff 4e 	movl   $0x20746f4e,-0x244(%ebp)
    2d35:	6f 74 20 
    2d38:	c7 85 c0 fd ff ff 50 	movl   $0x73657250,-0x240(%ebp)
    2d3f:	72 65 73 
    2d42:	c7 85 c4 fd ff ff 65 	movl   $0x746e65,-0x23c(%ebp)
    2d49:	6e 74 00 
    2d4c:	8d 9d c8 fd ff ff    	lea    -0x238(%ebp),%ebx
    2d52:	b8 00 00 00 00       	mov    $0x0,%eax
    2d57:	ba 0a 00 00 00       	mov    $0xa,%edx
    2d5c:	89 df                	mov    %ebx,%edi
    2d5e:	89 d1                	mov    %edx,%ecx
    2d60:	f3 ab                	rep stos %eax,%es:(%edi)
    2d62:	c7 85 f0 fd ff ff 23 	movl   $0x20535323,-0x210(%ebp)
    2d69:	53 53 20 
    2d6c:	c7 85 f4 fd ff ff 53 	movl   $0x63617453,-0x20c(%ebp)
    2d73:	74 61 63 
    2d76:	c7 85 f8 fd ff ff 6b 	movl   $0x65532d6b,-0x208(%ebp)
    2d7d:	2d 53 65 
    2d80:	c7 85 fc fd ff ff 67 	movl   $0x6e656d67,-0x204(%ebp)
    2d87:	6d 65 6e 
    2d8a:	c7 85 00 fe ff ff 74 	movl   $0x61462074,-0x200(%ebp)
    2d91:	20 46 61 
    2d94:	c7 85 04 fe ff ff 75 	movl   $0x746c75,-0x1fc(%ebp)
    2d9b:	6c 74 00 
    2d9e:	8d 9d 08 fe ff ff    	lea    -0x1f8(%ebp),%ebx
    2da4:	b8 00 00 00 00       	mov    $0x0,%eax
    2da9:	ba 0a 00 00 00       	mov    $0xa,%edx
    2dae:	89 df                	mov    %ebx,%edi
    2db0:	89 d1                	mov    %edx,%ecx
    2db2:	f3 ab                	rep stos %eax,%es:(%edi)
    2db4:	c7 85 30 fe ff ff 23 	movl   $0x20504723,-0x1d0(%ebp)
    2dbb:	47 50 20 
    2dbe:	c7 85 34 fe ff ff 47 	movl   $0x656e6547,-0x1cc(%ebp)
    2dc5:	65 6e 65 
    2dc8:	c7 85 38 fe ff ff 72 	movl   $0x206c6172,-0x1c8(%ebp)
    2dcf:	61 6c 20 
    2dd2:	c7 85 3c fe ff ff 50 	movl   $0x746f7250,-0x1c4(%ebp)
    2dd9:	72 6f 74 
    2ddc:	c7 85 40 fe ff ff 65 	movl   $0x69746365,-0x1c0(%ebp)
    2de3:	63 74 69 
    2de6:	c7 85 44 fe ff ff 6f 	movl   $0x6e6f,-0x1bc(%ebp)
    2ded:	6e 00 00 
    2df0:	8d 9d 48 fe ff ff    	lea    -0x1b8(%ebp),%ebx
    2df6:	b8 00 00 00 00       	mov    $0x0,%eax
    2dfb:	ba 0a 00 00 00       	mov    $0xa,%edx
    2e00:	89 df                	mov    %ebx,%edi
    2e02:	89 d1                	mov    %edx,%ecx
    2e04:	f3 ab                	rep stos %eax,%es:(%edi)
    2e06:	c7 85 70 fe ff ff 23 	movl   $0x20465023,-0x190(%ebp)
    2e0d:	50 46 20 
    2e10:	c7 85 74 fe ff ff 50 	movl   $0x65676150,-0x18c(%ebp)
    2e17:	61 67 65 
    2e1a:	c7 85 78 fe ff ff 20 	movl   $0x75614620,-0x188(%ebp)
    2e21:	46 61 75 
    2e24:	c7 85 7c fe ff ff 6c 	movl   $0x746c,-0x184(%ebp)
    2e2b:	74 00 00 
    2e2e:	8d 9d 80 fe ff ff    	lea    -0x180(%ebp),%ebx
    2e34:	b8 00 00 00 00       	mov    $0x0,%eax
    2e39:	ba 0c 00 00 00       	mov    $0xc,%edx
    2e3e:	89 df                	mov    %ebx,%edi
    2e40:	89 d1                	mov    %edx,%ecx
    2e42:	f3 ab                	rep stos %eax,%es:(%edi)
    2e44:	c7 85 b0 fe ff ff e2 	movl   $0x209480e2,-0x150(%ebp)
    2e4b:	80 94 20 
    2e4e:	c7 85 b4 fe ff ff 20 	movl   $0x6e492820,-0x14c(%ebp)
    2e55:	28 49 6e 
    2e58:	c7 85 b8 fe ff ff 74 	movl   $0x206c6574,-0x148(%ebp)
    2e5f:	65 6c 20 
    2e62:	c7 85 bc fe ff ff 72 	movl   $0x65736572,-0x144(%ebp)
    2e69:	65 73 65 
    2e6c:	c7 85 c0 fe ff ff 72 	movl   $0x64657672,-0x140(%ebp)
    2e73:	76 65 64 
    2e76:	c7 85 c4 fe ff ff 2e 	movl   $0x6f44202e,-0x13c(%ebp)
    2e7d:	20 44 6f 
    2e80:	c7 85 c8 fe ff ff 20 	movl   $0x746f6e20,-0x138(%ebp)
    2e87:	6e 6f 74 
    2e8a:	c7 85 cc fe ff ff 20 	movl   $0x65737520,-0x134(%ebp)
    2e91:	75 73 65 
    2e94:	c7 85 d0 fe ff ff 2e 	movl   $0x292e,-0x130(%ebp)
    2e9b:	29 00 00 
    2e9e:	8d 95 d4 fe ff ff    	lea    -0x12c(%ebp),%edx
    2ea4:	b9 00 00 00 00       	mov    $0x0,%ecx
    2ea9:	b8 1c 00 00 00       	mov    $0x1c,%eax
    2eae:	89 c3                	mov    %eax,%ebx
    2eb0:	83 e3 fc             	and    $0xfffffffc,%ebx
    2eb3:	b8 00 00 00 00       	mov    $0x0,%eax
    2eb8:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
    2ebb:	83 c0 04             	add    $0x4,%eax
    2ebe:	39 d8                	cmp    %ebx,%eax
    2ec0:	72 f6                	jb     2eb8 <exception_handler+0x5c6>
    2ec2:	01 c2                	add    %eax,%edx
    2ec4:	c7 85 f0 fe ff ff 23 	movl   $0x20464d23,-0x110(%ebp)
    2ecb:	4d 46 20 
    2ece:	c7 85 f4 fe ff ff 78 	movl   $0x20373878,-0x10c(%ebp)
    2ed5:	38 37 20 
    2ed8:	c7 85 f8 fe ff ff 46 	movl   $0x20555046,-0x108(%ebp)
    2edf:	50 55 20 
    2ee2:	c7 85 fc fe ff ff 46 	movl   $0x616f6c46,-0x104(%ebp)
    2ee9:	6c 6f 61 
    2eec:	c7 85 00 ff ff ff 74 	movl   $0x676e6974,-0x100(%ebp)
    2ef3:	69 6e 67 
    2ef6:	c7 85 04 ff ff ff 2d 	movl   $0x696f502d,-0xfc(%ebp)
    2efd:	50 6f 69 
    2f00:	c7 85 08 ff ff ff 6e 	movl   $0x4520746e,-0xf8(%ebp)
    2f07:	74 20 45 
    2f0a:	c7 85 0c ff ff ff 72 	movl   $0x726f7272,-0xf4(%ebp)
    2f11:	72 6f 72 
    2f14:	c7 85 10 ff ff ff 20 	movl   $0x614d2820,-0xf0(%ebp)
    2f1b:	28 4d 61 
    2f1e:	c7 85 14 ff ff ff 74 	movl   $0x46206874,-0xec(%ebp)
    2f25:	68 20 46 
    2f28:	c7 85 18 ff ff ff 61 	movl   $0x746c7561,-0xe8(%ebp)
    2f2f:	75 6c 74 
    2f32:	c7 85 1c ff ff ff 29 	movl   $0x29,-0xe4(%ebp)
    2f39:	00 00 00 
    2f3c:	c7 85 20 ff ff ff 00 	movl   $0x0,-0xe0(%ebp)
    2f43:	00 00 00 
    2f46:	c7 85 24 ff ff ff 00 	movl   $0x0,-0xdc(%ebp)
    2f4d:	00 00 00 
    2f50:	c7 85 28 ff ff ff 00 	movl   $0x0,-0xd8(%ebp)
    2f57:	00 00 00 
    2f5a:	c7 85 2c ff ff ff 00 	movl   $0x0,-0xd4(%ebp)
    2f61:	00 00 00 
    2f64:	c7 85 30 ff ff ff 23 	movl   $0x20434123,-0xd0(%ebp)
    2f6b:	41 43 20 
    2f6e:	c7 85 34 ff ff ff 41 	movl   $0x67696c41,-0xcc(%ebp)
    2f75:	6c 69 67 
    2f78:	c7 85 38 ff ff ff 6e 	movl   $0x6e656d6e,-0xc8(%ebp)
    2f7f:	6d 65 6e 
    2f82:	c7 85 3c ff ff ff 74 	movl   $0x68432074,-0xc4(%ebp)
    2f89:	20 43 68 
    2f8c:	c7 85 40 ff ff ff 65 	movl   $0x6b6365,-0xc0(%ebp)
    2f93:	63 6b 00 
    2f96:	8d 9d 44 ff ff ff    	lea    -0xbc(%ebp),%ebx
    2f9c:	b8 00 00 00 00       	mov    $0x0,%eax
    2fa1:	ba 0b 00 00 00       	mov    $0xb,%edx
    2fa6:	89 df                	mov    %ebx,%edi
    2fa8:	89 d1                	mov    %edx,%ecx
    2faa:	f3 ab                	rep stos %eax,%es:(%edi)
    2fac:	c7 85 70 ff ff ff 23 	movl   $0x20434d23,-0x90(%ebp)
    2fb3:	4d 43 20 
    2fb6:	c7 85 74 ff ff ff 4d 	movl   $0x6863614d,-0x8c(%ebp)
    2fbd:	61 63 68 
    2fc0:	c7 85 78 ff ff ff 69 	movl   $0x20656e69,-0x88(%ebp)
    2fc7:	6e 65 20 
    2fca:	c7 85 7c ff ff ff 43 	movl   $0x63656843,-0x84(%ebp)
    2fd1:	68 65 63 
    2fd4:	c7 45 80 6b 00 00 00 	movl   $0x6b,-0x80(%ebp)
    2fdb:	8d 5d 84             	lea    -0x7c(%ebp),%ebx
    2fde:	b8 00 00 00 00       	mov    $0x0,%eax
    2fe3:	ba 0b 00 00 00       	mov    $0xb,%edx
    2fe8:	89 df                	mov    %ebx,%edi
    2fea:	89 d1                	mov    %edx,%ecx
    2fec:	f3 ab                	rep stos %eax,%es:(%edi)
    2fee:	c7 45 b0 23 58 46 20 	movl   $0x20465823,-0x50(%ebp)
    2ff5:	c7 45 b4 53 49 4d 44 	movl   $0x444d4953,-0x4c(%ebp)
    2ffc:	c7 45 b8 20 46 6c 6f 	movl   $0x6f6c4620,-0x48(%ebp)
    3003:	c7 45 bc 61 74 69 6e 	movl   $0x6e697461,-0x44(%ebp)
    300a:	c7 45 c0 67 2d 50 6f 	movl   $0x6f502d67,-0x40(%ebp)
    3011:	c7 45 c4 69 6e 74 20 	movl   $0x20746e69,-0x3c(%ebp)
    3018:	c7 45 c8 45 78 63 65 	movl   $0x65637845,-0x38(%ebp)
    301f:	c7 45 cc 70 74 69 6f 	movl   $0x6f697470,-0x34(%ebp)
    3026:	c7 45 d0 6e 00 00 00 	movl   $0x6e,-0x30(%ebp)
    302d:	8d 55 d4             	lea    -0x2c(%ebp),%edx
    3030:	b9 00 00 00 00       	mov    $0x0,%ecx
    3035:	b8 1c 00 00 00       	mov    $0x1c,%eax
    303a:	89 c3                	mov    %eax,%ebx
    303c:	83 e3 fc             	and    $0xfffffffc,%ebx
    303f:	b8 00 00 00 00       	mov    $0x0,%eax
    3044:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
    3047:	83 c0 04             	add    $0x4,%eax
    304a:	39 d8                	cmp    %ebx,%eax
    304c:	72 f6                	jb     3044 <exception_handler+0x752>
    304e:	01 c2                	add    %eax,%edx
    3050:	c7 05 68 ed 04 00 00 	movl   $0x0,0x4ed68
    3057:	00 00 00 
    305a:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    3061:	eb 10                	jmp    3073 <exception_handler+0x781>
    3063:	c7 04 24 2f 0c 01 00 	movl   $0x10c2f,(%esp)
    306a:	e8 81 1e 00 00       	call   4ef0 <disp_str>
    306f:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    3073:	81 7d f4 8f 01 00 00 	cmpl   $0x18f,-0xc(%ebp)
    307a:	7e e7                	jle    3063 <exception_handler+0x771>
    307c:	c7 05 68 ed 04 00 00 	movl   $0x0,0x4ed68
    3083:	00 00 00 
    3086:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3089:	89 44 24 04          	mov    %eax,0x4(%esp)
    308d:	c7 04 24 31 0c 01 00 	movl   $0x10c31,(%esp)
    3094:	e8 9e 1e 00 00       	call   4f37 <disp_color_str>
    3099:	8d 85 f0 fa ff ff    	lea    -0x510(%ebp),%eax
    309f:	8b 55 08             	mov    0x8(%ebp),%edx
    30a2:	c1 e2 06             	shl    $0x6,%edx
    30a5:	8d 14 10             	lea    (%eax,%edx,1),%edx
    30a8:	8b 45 f0             	mov    -0x10(%ebp),%eax
    30ab:	89 44 24 04          	mov    %eax,0x4(%esp)
    30af:	89 14 24             	mov    %edx,(%esp)
    30b2:	e8 80 1e 00 00       	call   4f37 <disp_color_str>
    30b7:	8b 45 f0             	mov    -0x10(%ebp),%eax
    30ba:	89 44 24 04          	mov    %eax,0x4(%esp)
    30be:	c7 04 24 41 0c 01 00 	movl   $0x10c41,(%esp)
    30c5:	e8 6d 1e 00 00       	call   4f37 <disp_color_str>
    30ca:	8b 45 f0             	mov    -0x10(%ebp),%eax
    30cd:	89 44 24 04          	mov    %eax,0x4(%esp)
    30d1:	c7 04 24 44 0c 01 00 	movl   $0x10c44,(%esp)
    30d8:	e8 5a 1e 00 00       	call   4f37 <disp_color_str>
    30dd:	8b 45 18             	mov    0x18(%ebp),%eax
    30e0:	89 04 24             	mov    %eax,(%esp)
    30e3:	e8 b9 22 00 00       	call   53a1 <disp_int>
    30e8:	8b 45 f0             	mov    -0x10(%ebp),%eax
    30eb:	89 44 24 04          	mov    %eax,0x4(%esp)
    30ef:	c7 04 24 4c 0c 01 00 	movl   $0x10c4c,(%esp)
    30f6:	e8 3c 1e 00 00       	call   4f37 <disp_color_str>
    30fb:	8b 45 14             	mov    0x14(%ebp),%eax
    30fe:	89 04 24             	mov    %eax,(%esp)
    3101:	e8 9b 22 00 00       	call   53a1 <disp_int>
    3106:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3109:	89 44 24 04          	mov    %eax,0x4(%esp)
    310d:	c7 04 24 50 0c 01 00 	movl   $0x10c50,(%esp)
    3114:	e8 1e 1e 00 00       	call   4f37 <disp_color_str>
    3119:	8b 45 10             	mov    0x10(%ebp),%eax
    311c:	89 04 24             	mov    %eax,(%esp)
    311f:	e8 7d 22 00 00       	call   53a1 <disp_int>
    3124:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3127:	89 44 24 04          	mov    %eax,0x4(%esp)
    312b:	c7 04 24 55 0c 01 00 	movl   $0x10c55,(%esp)
    3132:	e8 00 1e 00 00       	call   4f37 <disp_color_str>
    3137:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    313c:	89 c2                	mov    %eax,%edx
    313e:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3143:	89 d1                	mov    %edx,%ecx
    3145:	29 c1                	sub    %eax,%ecx
    3147:	89 c8                	mov    %ecx,%eax
    3149:	d1 f8                	sar    %eax
    314b:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3151:	89 04 24             	mov    %eax,(%esp)
    3154:	e8 48 22 00 00       	call   53a1 <disp_int>
    3159:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
    315d:	74 1e                	je     317d <exception_handler+0x88b>
    315f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3162:	89 44 24 04          	mov    %eax,0x4(%esp)
    3166:	c7 04 24 5a 0c 01 00 	movl   $0x10c5a,(%esp)
    316d:	e8 c5 1d 00 00       	call   4f37 <disp_color_str>
    3172:	8b 45 0c             	mov    0xc(%ebp),%eax
    3175:	89 04 24             	mov    %eax,(%esp)
    3178:	e8 24 22 00 00       	call   53a1 <disp_int>
    317d:	81 c4 20 05 00 00    	add    $0x520,%esp
    3183:	5b                   	pop    %ebx
    3184:	5f                   	pop    %edi
    3185:	5d                   	pop    %ebp
    3186:	c3                   	ret    
    3187:	90                   	nop

00003188 <schedule>:
    3188:	55                   	push   %ebp
    3189:	89 e5                	mov    %esp,%ebp
    318b:	83 ec 10             	sub    $0x10,%esp
    318e:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
    3195:	c7 45 fc c0 0c 05 00 	movl   $0x50cc0,-0x4(%ebp)
    319c:	eb 44                	jmp    31e2 <schedule+0x5a>
    319e:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31a1:	8b 80 fa 01 00 00    	mov    0x1fa(%eax),%eax
    31a7:	85 c0                	test   %eax,%eax
    31a9:	74 30                	je     31db <schedule+0x53>
    31ab:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31ae:	8b 90 fa 01 00 00    	mov    0x1fa(%eax),%edx
    31b4:	a1 e0 01 05 00       	mov    0x501e0,%eax
    31b9:	39 c2                	cmp    %eax,%edx
    31bb:	73 1e                	jae    31db <schedule+0x53>
    31bd:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31c0:	8b 40 76             	mov    0x76(%eax),%eax
    31c3:	89 c2                	mov    %eax,%edx
    31c5:	80 ce 20             	or     $0x20,%dh
    31c8:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31cb:	89 50 76             	mov    %edx,0x76(%eax)
    31ce:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31d1:	c7 80 fa 01 00 00 00 	movl   $0x0,0x1fa(%eax)
    31d8:	00 00 00 
    31db:	81 45 fc 36 03 00 00 	addl   $0x336,-0x4(%ebp)
    31e2:	81 7d fc 66 90 05 00 	cmpl   $0x59066,-0x4(%ebp)
    31e9:	76 b3                	jbe    319e <schedule+0x16>
    31eb:	eb 74                	jmp    3261 <schedule+0xd9>
    31ed:	c7 45 fc c0 0c 05 00 	movl   $0x50cc0,-0x4(%ebp)
    31f4:	eb 2d                	jmp    3223 <schedule+0x9b>
    31f6:	8b 45 fc             	mov    -0x4(%ebp),%eax
    31f9:	8b 40 72             	mov    0x72(%eax),%eax
    31fc:	85 c0                	test   %eax,%eax
    31fe:	75 1c                	jne    321c <schedule+0x94>
    3200:	8b 45 fc             	mov    -0x4(%ebp),%eax
    3203:	8b 40 5a             	mov    0x5a(%eax),%eax
    3206:	3b 45 f8             	cmp    -0x8(%ebp),%eax
    3209:	7e 11                	jle    321c <schedule+0x94>
    320b:	8b 45 fc             	mov    -0x4(%ebp),%eax
    320e:	8b 40 5a             	mov    0x5a(%eax),%eax
    3211:	89 45 f8             	mov    %eax,-0x8(%ebp)
    3214:	8b 45 fc             	mov    -0x4(%ebp),%eax
    3217:	a3 64 ed 04 00       	mov    %eax,0x4ed64
    321c:	81 45 fc 36 03 00 00 	addl   $0x336,-0x4(%ebp)
    3223:	81 7d fc 66 90 05 00 	cmpl   $0x59066,-0x4(%ebp)
    322a:	76 ca                	jbe    31f6 <schedule+0x6e>
    322c:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
    3230:	75 2f                	jne    3261 <schedule+0xd9>
    3232:	c7 45 fc c0 0c 05 00 	movl   $0x50cc0,-0x4(%ebp)
    3239:	eb 1d                	jmp    3258 <schedule+0xd0>
    323b:	8b 45 fc             	mov    -0x4(%ebp),%eax
    323e:	8b 40 72             	mov    0x72(%eax),%eax
    3241:	85 c0                	test   %eax,%eax
    3243:	75 0c                	jne    3251 <schedule+0xc9>
    3245:	8b 45 fc             	mov    -0x4(%ebp),%eax
    3248:	8b 50 5e             	mov    0x5e(%eax),%edx
    324b:	8b 45 fc             	mov    -0x4(%ebp),%eax
    324e:	89 50 5a             	mov    %edx,0x5a(%eax)
    3251:	81 45 fc 36 03 00 00 	addl   $0x336,-0x4(%ebp)
    3258:	81 7d fc 66 90 05 00 	cmpl   $0x59066,-0x4(%ebp)
    325f:	76 da                	jbe    323b <schedule+0xb3>
    3261:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
    3265:	74 86                	je     31ed <schedule+0x65>
    3267:	c9                   	leave  
    3268:	c3                   	ret    

00003269 <do_setuid>:
    3269:	55                   	push   %ebp
    326a:	89 e5                	mov    %esp,%ebp
    326c:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    3271:	8b 15 8c ed 04 00    	mov    0x4ed8c,%edx
    3277:	66 89 90 1e 02 00 00 	mov    %dx,0x21e(%eax)
    327e:	b8 00 00 00 00       	mov    $0x0,%eax
    3283:	5d                   	pop    %ebp
    3284:	c3                   	ret    

00003285 <do_getuid>:
    3285:	55                   	push   %ebp
    3286:	89 e5                	mov    %esp,%ebp
    3288:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    328d:	0f b7 80 1e 02 00 00 	movzwl 0x21e(%eax),%eax
    3294:	0f b7 c0             	movzwl %ax,%eax
    3297:	5d                   	pop    %ebp
    3298:	c3                   	ret    

00003299 <do_setgid>:
    3299:	55                   	push   %ebp
    329a:	89 e5                	mov    %esp,%ebp
    329c:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    32a1:	8b 15 8c ed 04 00    	mov    0x4ed8c,%edx
    32a7:	66 89 90 24 02 00 00 	mov    %dx,0x224(%eax)
    32ae:	b8 00 00 00 00       	mov    $0x0,%eax
    32b3:	5d                   	pop    %ebp
    32b4:	c3                   	ret    

000032b5 <do_getgid>:
    32b5:	55                   	push   %ebp
    32b6:	89 e5                	mov    %esp,%ebp
    32b8:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    32bd:	0f b7 80 24 02 00 00 	movzwl 0x224(%eax),%eax
    32c4:	0f b7 c0             	movzwl %ax,%eax
    32c7:	5d                   	pop    %ebp
    32c8:	c3                   	ret    

000032c9 <do_geteuid>:
    32c9:	55                   	push   %ebp
    32ca:	89 e5                	mov    %esp,%ebp
    32cc:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    32d1:	0f b7 80 20 02 00 00 	movzwl 0x220(%eax),%eax
    32d8:	0f b7 c0             	movzwl %ax,%eax
    32db:	5d                   	pop    %ebp
    32dc:	c3                   	ret    

000032dd <do_getegid>:
    32dd:	55                   	push   %ebp
    32de:	89 e5                	mov    %esp,%ebp
    32e0:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    32e5:	0f b7 80 26 02 00 00 	movzwl 0x226(%eax),%eax
    32ec:	0f b7 c0             	movzwl %ax,%eax
    32ef:	5d                   	pop    %ebp
    32f0:	c3                   	ret    

000032f1 <do_nice>:
    32f1:	55                   	push   %ebp
    32f2:	89 e5                	mov    %esp,%ebp
    32f4:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    32f9:	8b 50 5e             	mov    0x5e(%eax),%edx
    32fc:	a1 8c ed 04 00       	mov    0x4ed8c,%eax
    3301:	89 d1                	mov    %edx,%ecx
    3303:	29 c1                	sub    %eax,%ecx
    3305:	89 c8                	mov    %ecx,%eax
    3307:	85 c0                	test   %eax,%eax
    3309:	7e 21                	jle    332c <do_nice+0x3b>
    330b:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    3310:	8b 15 8c ed 04 00    	mov    0x4ed8c,%edx
    3316:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    331c:	f7 da                	neg    %edx
    331e:	01 d0                	add    %edx,%eax
    3320:	a3 64 ed 04 00       	mov    %eax,0x4ed64
    3325:	b8 00 00 00 00       	mov    $0x0,%eax
    332a:	eb 05                	jmp    3331 <do_nice+0x40>
    332c:	b8 01 00 00 00       	mov    $0x1,%eax
    3331:	5d                   	pop    %ebp
    3332:	c3                   	ret    

00003333 <sys_sendrec>:
    3333:	55                   	push   %ebp
    3334:	89 e5                	mov    %esp,%ebp
    3336:	83 ec 28             	sub    $0x28,%esp
    3339:	a1 88 d6 04 00       	mov    0x4d688,%eax
    333e:	85 c0                	test   %eax,%eax
    3340:	74 24                	je     3366 <sys_sendrec+0x33>
    3342:	c7 44 24 0c 82 00 00 	movl   $0x82,0xc(%esp)
    3349:	00 
    334a:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3351:	00 
    3352:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3359:	00 
    335a:	c7 04 24 6f 0c 01 00 	movl   $0x10c6f,(%esp)
    3361:	e8 64 d0 00 00       	call   103ca <assertion_failure>
    3366:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    336a:	78 06                	js     3372 <sys_sendrec+0x3f>
    336c:	83 7d 0c 29          	cmpl   $0x29,0xc(%ebp)
    3370:	7e 30                	jle    33a2 <sys_sendrec+0x6f>
    3372:	83 7d 0c 34          	cmpl   $0x34,0xc(%ebp)
    3376:	74 2a                	je     33a2 <sys_sendrec+0x6f>
    3378:	83 7d 0c f6          	cmpl   $0xfffffff6,0xc(%ebp)
    337c:	74 24                	je     33a2 <sys_sendrec+0x6f>
    337e:	c7 44 24 0c 85 00 00 	movl   $0x85,0xc(%esp)
    3385:	00 
    3386:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    338d:	00 
    338e:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3395:	00 
    3396:	c7 04 24 80 0c 01 00 	movl   $0x10c80,(%esp)
    339d:	e8 28 d0 00 00       	call   103ca <assertion_failure>
    33a2:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    33a9:	8b 55 14             	mov    0x14(%ebp),%edx
    33ac:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    33b1:	89 d1                	mov    %edx,%ecx
    33b3:	29 c1                	sub    %eax,%ecx
    33b5:	89 c8                	mov    %ecx,%eax
    33b7:	d1 f8                	sar    %eax
    33b9:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    33bf:	89 45 f0             	mov    %eax,-0x10(%ebp)
    33c2:	8b 45 10             	mov    0x10(%ebp),%eax
    33c5:	89 44 24 04          	mov    %eax,0x4(%esp)
    33c9:	8b 45 f0             	mov    -0x10(%ebp),%eax
    33cc:	89 04 24             	mov    %eax,(%esp)
    33cf:	e8 01 01 00 00       	call   34d5 <va2la>
    33d4:	89 45 ec             	mov    %eax,-0x14(%ebp)
    33d7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    33da:	8b 55 f0             	mov    -0x10(%ebp),%edx
    33dd:	89 10                	mov    %edx,(%eax)
    33df:	8b 45 ec             	mov    -0x14(%ebp),%eax
    33e2:	8b 00                	mov    (%eax),%eax
    33e4:	3b 45 0c             	cmp    0xc(%ebp),%eax
    33e7:	75 24                	jne    340d <sys_sendrec+0xda>
    33e9:	c7 44 24 0c 8c 00 00 	movl   $0x8c,0xc(%esp)
    33f0:	00 
    33f1:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    33f8:	00 
    33f9:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3400:	00 
    3401:	c7 04 24 de 0c 01 00 	movl   $0x10cde,(%esp)
    3408:	e8 bd cf 00 00       	call   103ca <assertion_failure>
    340d:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
    3411:	75 27                	jne    343a <sys_sendrec+0x107>
    3413:	8b 45 10             	mov    0x10(%ebp),%eax
    3416:	89 44 24 08          	mov    %eax,0x8(%esp)
    341a:	8b 45 0c             	mov    0xc(%ebp),%eax
    341d:	89 44 24 04          	mov    %eax,0x4(%esp)
    3421:	8b 45 14             	mov    0x14(%ebp),%eax
    3424:	89 04 24             	mov    %eax,(%esp)
    3427:	e8 b2 02 00 00       	call   36de <msg_send>
    342c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    342f:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    3433:	74 55                	je     348a <sys_sendrec+0x157>
    3435:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3438:	eb 55                	jmp    348f <sys_sendrec+0x15c>
    343a:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
    343e:	75 27                	jne    3467 <sys_sendrec+0x134>
    3440:	8b 45 10             	mov    0x10(%ebp),%eax
    3443:	89 44 24 08          	mov    %eax,0x8(%esp)
    3447:	8b 45 0c             	mov    0xc(%ebp),%eax
    344a:	89 44 24 04          	mov    %eax,0x4(%esp)
    344e:	8b 45 14             	mov    0x14(%ebp),%eax
    3451:	89 04 24             	mov    %eax,(%esp)
    3454:	e8 71 07 00 00       	call   3bca <msg_receive>
    3459:	89 45 f4             	mov    %eax,-0xc(%ebp)
    345c:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    3460:	74 28                	je     348a <sys_sendrec+0x157>
    3462:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3465:	eb 28                	jmp    348f <sys_sendrec+0x15c>
    3467:	c7 44 24 0c 02 00 00 	movl   $0x2,0xc(%esp)
    346e:	00 
    346f:	c7 44 24 08 01 00 00 	movl   $0x1,0x8(%esp)
    3476:	00 
    3477:	8b 45 08             	mov    0x8(%ebp),%eax
    347a:	89 44 24 04          	mov    %eax,0x4(%esp)
    347e:	c7 04 24 f8 0c 01 00 	movl   $0x10cf8,(%esp)
    3485:	e8 ad ea ff ff       	call   1f37 <panic>
    348a:	b8 00 00 00 00       	mov    $0x0,%eax
    348f:	c9                   	leave  
    3490:	c3                   	ret    

00003491 <ldt_seg_linear>:
    3491:	55                   	push   %ebp
    3492:	89 e5                	mov    %esp,%ebp
    3494:	83 ec 10             	sub    $0x10,%esp
    3497:	8b 45 08             	mov    0x8(%ebp),%eax
    349a:	8d 50 4a             	lea    0x4a(%eax),%edx
    349d:	8b 45 0c             	mov    0xc(%ebp),%eax
    34a0:	c1 e0 03             	shl    $0x3,%eax
    34a3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    34a6:	89 45 fc             	mov    %eax,-0x4(%ebp)
    34a9:	8b 45 fc             	mov    -0x4(%ebp),%eax
    34ac:	0f b6 40 07          	movzbl 0x7(%eax),%eax
    34b0:	0f b6 c0             	movzbl %al,%eax
    34b3:	89 c2                	mov    %eax,%edx
    34b5:	c1 e2 18             	shl    $0x18,%edx
    34b8:	8b 45 fc             	mov    -0x4(%ebp),%eax
    34bb:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    34bf:	0f b6 c0             	movzbl %al,%eax
    34c2:	c1 e0 10             	shl    $0x10,%eax
    34c5:	09 c2                	or     %eax,%edx
    34c7:	8b 45 fc             	mov    -0x4(%ebp),%eax
    34ca:	0f b7 40 02          	movzwl 0x2(%eax),%eax
    34ce:	0f b7 c0             	movzwl %ax,%eax
    34d1:	09 d0                	or     %edx,%eax
    34d3:	c9                   	leave  
    34d4:	c3                   	ret    

000034d5 <va2la>:
    34d5:	55                   	push   %ebp
    34d6:	89 e5                	mov    %esp,%ebp
    34d8:	83 ec 28             	sub    $0x28,%esp
    34db:	8b 45 08             	mov    0x8(%ebp),%eax
    34de:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    34e4:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    34e9:	89 45 f4             	mov    %eax,-0xc(%ebp)
    34ec:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    34f3:	00 
    34f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    34f7:	89 04 24             	mov    %eax,(%esp)
    34fa:	e8 92 ff ff ff       	call   3491 <ldt_seg_linear>
    34ff:	89 45 f0             	mov    %eax,-0x10(%ebp)
    3502:	8b 45 0c             	mov    0xc(%ebp),%eax
    3505:	03 45 f0             	add    -0x10(%ebp),%eax
    3508:	89 45 ec             	mov    %eax,-0x14(%ebp)
    350b:	83 7d 08 0d          	cmpl   $0xd,0x8(%ebp)
    350f:	7f 2c                	jg     353d <va2la+0x68>
    3511:	8b 45 0c             	mov    0xc(%ebp),%eax
    3514:	3b 45 ec             	cmp    -0x14(%ebp),%eax
    3517:	74 24                	je     353d <va2la+0x68>
    3519:	c7 44 24 0c cc 00 00 	movl   $0xcc,0xc(%esp)
    3520:	00 
    3521:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3528:	00 
    3529:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3530:	00 
    3531:	c7 04 24 32 0d 01 00 	movl   $0x10d32,(%esp)
    3538:	e8 8d ce 00 00       	call   103ca <assertion_failure>
    353d:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3540:	c9                   	leave  
    3541:	c3                   	ret    

00003542 <reset_msg>:
    3542:	55                   	push   %ebp
    3543:	89 e5                	mov    %esp,%ebp
    3545:	83 ec 18             	sub    $0x18,%esp
    3548:	c7 44 24 08 30 00 00 	movl   $0x30,0x8(%esp)
    354f:	00 
    3550:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    3557:	00 
    3558:	8b 45 08             	mov    0x8(%ebp),%eax
    355b:	89 04 24             	mov    %eax,(%esp)
    355e:	e8 bc cb 00 00       	call   1011f <memset>
    3563:	c9                   	leave  
    3564:	c3                   	ret    

00003565 <block>:
    3565:	55                   	push   %ebp
    3566:	89 e5                	mov    %esp,%ebp
    3568:	83 ec 18             	sub    $0x18,%esp
    356b:	8b 45 08             	mov    0x8(%ebp),%eax
    356e:	8b 40 72             	mov    0x72(%eax),%eax
    3571:	85 c0                	test   %eax,%eax
    3573:	75 24                	jne    3599 <block+0x34>
    3575:	c7 44 24 0c ed 00 00 	movl   $0xed,0xc(%esp)
    357c:	00 
    357d:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3584:	00 
    3585:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    358c:	00 
    358d:	c7 04 24 40 0d 01 00 	movl   $0x10d40,(%esp)
    3594:	e8 31 ce 00 00       	call   103ca <assertion_failure>
    3599:	e8 ea fb ff ff       	call   3188 <schedule>
    359e:	c9                   	leave  
    359f:	c3                   	ret    

000035a0 <unblock>:
    35a0:	55                   	push   %ebp
    35a1:	89 e5                	mov    %esp,%ebp
    35a3:	83 ec 18             	sub    $0x18,%esp
    35a6:	8b 45 08             	mov    0x8(%ebp),%eax
    35a9:	8b 40 72             	mov    0x72(%eax),%eax
    35ac:	85 c0                	test   %eax,%eax
    35ae:	74 24                	je     35d4 <unblock+0x34>
    35b0:	c7 44 24 0c fc 00 00 	movl   $0xfc,0xc(%esp)
    35b7:	00 
    35b8:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    35bf:	00 
    35c0:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    35c7:	00 
    35c8:	c7 04 24 49 0d 01 00 	movl   $0x10d49,(%esp)
    35cf:	e8 f6 cd 00 00       	call   103ca <assertion_failure>
    35d4:	c9                   	leave  
    35d5:	c3                   	ret    

000035d6 <deadlock>:
    35d6:	55                   	push   %ebp
    35d7:	89 e5                	mov    %esp,%ebp
    35d9:	83 ec 28             	sub    $0x28,%esp
    35dc:	8b 45 0c             	mov    0xc(%ebp),%eax
    35df:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    35e5:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    35ea:	89 45 f4             	mov    %eax,-0xc(%ebp)
    35ed:	8b 45 f4             	mov    -0xc(%ebp),%eax
    35f0:	8b 40 72             	mov    0x72(%eax),%eax
    35f3:	83 e0 02             	and    $0x2,%eax
    35f6:	85 c0                	test   %eax,%eax
    35f8:	0f 84 d9 00 00 00    	je     36d7 <deadlock+0x101>
    35fe:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3601:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3607:	3b 45 08             	cmp    0x8(%ebp),%eax
    360a:	0f 85 ab 00 00 00    	jne    36bb <deadlock+0xe5>
    3610:	8b 45 0c             	mov    0xc(%ebp),%eax
    3613:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    3619:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    361e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    3621:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3624:	83 c0 62             	add    $0x62,%eax
    3627:	89 44 24 04          	mov    %eax,0x4(%esp)
    362b:	c7 04 24 57 0d 01 00 	movl   $0x10d57,(%esp)
    3632:	e8 53 c7 00 00       	call   fd8a <printl>
    3637:	8b 45 f4             	mov    -0xc(%ebp),%eax
    363a:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3640:	85 c0                	test   %eax,%eax
    3642:	75 24                	jne    3668 <deadlock+0x92>
    3644:	c7 44 24 0c 18 01 00 	movl   $0x118,0xc(%esp)
    364b:	00 
    364c:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3653:	00 
    3654:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    365b:	00 
    365c:	c7 04 24 5d 0d 01 00 	movl   $0x10d5d,(%esp)
    3663:	e8 62 cd 00 00       	call   103ca <assertion_failure>
    3668:	8b 45 f4             	mov    -0xc(%ebp),%eax
    366b:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3671:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    3677:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    367c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    367f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3682:	83 c0 62             	add    $0x62,%eax
    3685:	89 44 24 04          	mov    %eax,0x4(%esp)
    3689:	c7 04 24 64 0d 01 00 	movl   $0x10d64,(%esp)
    3690:	e8 f5 c6 00 00       	call   fd8a <printl>
    3695:	8b 45 08             	mov    0x8(%ebp),%eax
    3698:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    369e:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    36a3:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    36a6:	75 8f                	jne    3637 <deadlock+0x61>
    36a8:	c7 04 24 69 0d 01 00 	movl   $0x10d69,(%esp)
    36af:	e8 d6 c6 00 00       	call   fd8a <printl>
    36b4:	b8 01 00 00 00       	mov    $0x1,%eax
    36b9:	eb 21                	jmp    36dc <deadlock+0x106>
    36bb:	8b 45 f4             	mov    -0xc(%ebp),%eax
    36be:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    36c4:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    36ca:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    36cf:	89 45 f4             	mov    %eax,-0xc(%ebp)
    36d2:	e9 16 ff ff ff       	jmp    35ed <deadlock+0x17>
    36d7:	b8 00 00 00 00       	mov    $0x0,%eax
    36dc:	c9                   	leave  
    36dd:	c3                   	ret    

000036de <msg_send>:
    36de:	55                   	push   %ebp
    36df:	89 e5                	mov    %esp,%ebp
    36e1:	53                   	push   %ebx
    36e2:	83 ec 24             	sub    $0x24,%esp
    36e5:	8b 45 08             	mov    0x8(%ebp),%eax
    36e8:	89 45 f0             	mov    %eax,-0x10(%ebp)
    36eb:	8b 45 0c             	mov    0xc(%ebp),%eax
    36ee:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    36f4:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    36f9:	89 45 ec             	mov    %eax,-0x14(%ebp)
    36fc:	8b 55 f0             	mov    -0x10(%ebp),%edx
    36ff:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3704:	89 d1                	mov    %edx,%ecx
    3706:	29 c1                	sub    %eax,%ecx
    3708:	89 c8                	mov    %ecx,%eax
    370a:	d1 f8                	sar    %eax
    370c:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3712:	3b 45 0c             	cmp    0xc(%ebp),%eax
    3715:	75 24                	jne    373b <msg_send+0x5d>
    3717:	c7 44 24 0c 3c 01 00 	movl   $0x13c,0xc(%esp)
    371e:	00 
    371f:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3726:	00 
    3727:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    372e:	00 
    372f:	c7 04 24 6d 0d 01 00 	movl   $0x10d6d,(%esp)
    3736:	e8 8f cc 00 00       	call   103ca <assertion_failure>
    373b:	8b 55 f0             	mov    -0x10(%ebp),%edx
    373e:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3743:	89 d3                	mov    %edx,%ebx
    3745:	29 c3                	sub    %eax,%ebx
    3747:	89 d8                	mov    %ebx,%eax
    3749:	d1 f8                	sar    %eax
    374b:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3751:	8b 55 0c             	mov    0xc(%ebp),%edx
    3754:	89 54 24 04          	mov    %edx,0x4(%esp)
    3758:	89 04 24             	mov    %eax,(%esp)
    375b:	e8 76 fe ff ff       	call   35d6 <deadlock>
    3760:	85 c0                	test   %eax,%eax
    3762:	74 20                	je     3784 <msg_send+0xa6>
    3764:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3767:	8d 50 62             	lea    0x62(%eax),%edx
    376a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    376d:	83 c0 62             	add    $0x62,%eax
    3770:	89 54 24 08          	mov    %edx,0x8(%esp)
    3774:	89 44 24 04          	mov    %eax,0x4(%esp)
    3778:	c7 04 24 86 0d 01 00 	movl   $0x10d86,(%esp)
    377f:	e8 b3 e7 ff ff       	call   1f37 <panic>
    3784:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3787:	8b 40 72             	mov    0x72(%eax),%eax
    378a:	83 e0 04             	and    $0x4,%eax
    378d:	85 c0                	test   %eax,%eax
    378f:	0f 84 a8 02 00 00    	je     3a3d <msg_send+0x35f>
    3795:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3798:	8b 90 06 02 00 00    	mov    0x206(%eax),%edx
    379e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
    37a1:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    37a6:	89 cb                	mov    %ecx,%ebx
    37a8:	29 c3                	sub    %eax,%ebx
    37aa:	89 d8                	mov    %ebx,%eax
    37ac:	d1 f8                	sar    %eax
    37ae:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    37b4:	39 c2                	cmp    %eax,%edx
    37b6:	74 12                	je     37ca <msg_send+0xec>
    37b8:	8b 45 ec             	mov    -0x14(%ebp),%eax
    37bb:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    37c1:	83 f8 34             	cmp    $0x34,%eax
    37c4:	0f 85 73 02 00 00    	jne    3a3d <msg_send+0x35f>
    37ca:	8b 45 ec             	mov    -0x14(%ebp),%eax
    37cd:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    37d3:	85 c0                	test   %eax,%eax
    37d5:	75 24                	jne    37fb <msg_send+0x11d>
    37d7:	c7 44 24 0c 46 01 00 	movl   $0x146,0xc(%esp)
    37de:	00 
    37df:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    37e6:	00 
    37e7:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    37ee:	00 
    37ef:	c7 04 24 9a 0d 01 00 	movl   $0x10d9a,(%esp)
    37f6:	e8 cf cb 00 00       	call   103ca <assertion_failure>
    37fb:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
    37ff:	75 24                	jne    3825 <msg_send+0x147>
    3801:	c7 44 24 0c 47 01 00 	movl   $0x147,0xc(%esp)
    3808:	00 
    3809:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3810:	00 
    3811:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3818:	00 
    3819:	c7 04 24 a6 0d 01 00 	movl   $0x10da6,(%esp)
    3820:	e8 a5 cb 00 00       	call   103ca <assertion_failure>
    3825:	8b 55 f0             	mov    -0x10(%ebp),%edx
    3828:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    382d:	89 d1                	mov    %edx,%ecx
    382f:	29 c1                	sub    %eax,%ecx
    3831:	89 c8                	mov    %ecx,%eax
    3833:	d1 f8                	sar    %eax
    3835:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    383b:	8b 55 10             	mov    0x10(%ebp),%edx
    383e:	89 54 24 04          	mov    %edx,0x4(%esp)
    3842:	89 04 24             	mov    %eax,(%esp)
    3845:	e8 8b fc ff ff       	call   34d5 <va2la>
    384a:	89 c3                	mov    %eax,%ebx
    384c:	8b 45 ec             	mov    -0x14(%ebp),%eax
    384f:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3855:	89 44 24 04          	mov    %eax,0x4(%esp)
    3859:	8b 45 0c             	mov    0xc(%ebp),%eax
    385c:	89 04 24             	mov    %eax,(%esp)
    385f:	e8 71 fc ff ff       	call   34d5 <va2la>
    3864:	c7 44 24 08 30 00 00 	movl   $0x30,0x8(%esp)
    386b:	00 
    386c:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    3870:	89 04 24             	mov    %eax,(%esp)
    3873:	e8 78 c8 00 00       	call   100f0 <memcpy>
    3878:	8b 45 ec             	mov    -0x14(%ebp),%eax
    387b:	c7 80 02 02 00 00 00 	movl   $0x0,0x202(%eax)
    3882:	00 00 00 
    3885:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3888:	8b 40 72             	mov    0x72(%eax),%eax
    388b:	89 c2                	mov    %eax,%edx
    388d:	83 e2 fb             	and    $0xfffffffb,%edx
    3890:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3893:	89 50 72             	mov    %edx,0x72(%eax)
    3896:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3899:	c7 80 06 02 00 00 3e 	movl   $0x3e,0x206(%eax)
    38a0:	00 00 00 
    38a3:	8b 45 ec             	mov    -0x14(%ebp),%eax
    38a6:	89 04 24             	mov    %eax,(%esp)
    38a9:	e8 f2 fc ff ff       	call   35a0 <unblock>
    38ae:	8b 45 ec             	mov    -0x14(%ebp),%eax
    38b1:	8b 40 72             	mov    0x72(%eax),%eax
    38b4:	85 c0                	test   %eax,%eax
    38b6:	74 24                	je     38dc <msg_send+0x1fe>
    38b8:	c7 44 24 0c 51 01 00 	movl   $0x151,0xc(%esp)
    38bf:	00 
    38c0:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    38c7:	00 
    38c8:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    38cf:	00 
    38d0:	c7 04 24 a8 0d 01 00 	movl   $0x10da8,(%esp)
    38d7:	e8 ee ca 00 00       	call   103ca <assertion_failure>
    38dc:	8b 45 ec             	mov    -0x14(%ebp),%eax
    38df:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    38e5:	85 c0                	test   %eax,%eax
    38e7:	74 24                	je     390d <msg_send+0x22f>
    38e9:	c7 44 24 0c 52 01 00 	movl   $0x152,0xc(%esp)
    38f0:	00 
    38f1:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    38f8:	00 
    38f9:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3900:	00 
    3901:	c7 04 24 bb 0d 01 00 	movl   $0x10dbb,(%esp)
    3908:	e8 bd ca 00 00       	call   103ca <assertion_failure>
    390d:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3910:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    3916:	83 f8 3e             	cmp    $0x3e,%eax
    3919:	74 24                	je     393f <msg_send+0x261>
    391b:	c7 44 24 0c 53 01 00 	movl   $0x153,0xc(%esp)
    3922:	00 
    3923:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    392a:	00 
    392b:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3932:	00 
    3933:	c7 04 24 cc 0d 01 00 	movl   $0x10dcc,(%esp)
    393a:	e8 8b ca 00 00       	call   103ca <assertion_failure>
    393f:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3942:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3948:	83 f8 3e             	cmp    $0x3e,%eax
    394b:	74 24                	je     3971 <msg_send+0x293>
    394d:	c7 44 24 0c 54 01 00 	movl   $0x154,0xc(%esp)
    3954:	00 
    3955:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    395c:	00 
    395d:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3964:	00 
    3965:	c7 04 24 e8 0d 01 00 	movl   $0x10de8,(%esp)
    396c:	e8 59 ca 00 00       	call   103ca <assertion_failure>
    3971:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3974:	8b 40 72             	mov    0x72(%eax),%eax
    3977:	85 c0                	test   %eax,%eax
    3979:	74 24                	je     399f <msg_send+0x2c1>
    397b:	c7 44 24 0c 55 01 00 	movl   $0x155,0xc(%esp)
    3982:	00 
    3983:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    398a:	00 
    398b:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3992:	00 
    3993:	c7 04 24 02 0e 01 00 	movl   $0x10e02,(%esp)
    399a:	e8 2b ca 00 00       	call   103ca <assertion_failure>
    399f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    39a2:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    39a8:	85 c0                	test   %eax,%eax
    39aa:	74 24                	je     39d0 <msg_send+0x2f2>
    39ac:	c7 44 24 0c 56 01 00 	movl   $0x156,0xc(%esp)
    39b3:	00 
    39b4:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    39bb:	00 
    39bc:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    39c3:	00 
    39c4:	c7 04 24 15 0e 01 00 	movl   $0x10e15,(%esp)
    39cb:	e8 fa c9 00 00       	call   103ca <assertion_failure>
    39d0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    39d3:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    39d9:	83 f8 3e             	cmp    $0x3e,%eax
    39dc:	74 24                	je     3a02 <msg_send+0x324>
    39de:	c7 44 24 0c 57 01 00 	movl   $0x157,0xc(%esp)
    39e5:	00 
    39e6:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    39ed:	00 
    39ee:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    39f5:	00 
    39f6:	c7 04 24 26 0e 01 00 	movl   $0x10e26,(%esp)
    39fd:	e8 c8 c9 00 00       	call   103ca <assertion_failure>
    3a02:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a05:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3a0b:	83 f8 3e             	cmp    $0x3e,%eax
    3a0e:	0f 84 ab 01 00 00    	je     3bbf <msg_send+0x4e1>
    3a14:	c7 44 24 0c 58 01 00 	movl   $0x158,0xc(%esp)
    3a1b:	00 
    3a1c:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3a23:	00 
    3a24:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3a2b:	00 
    3a2c:	c7 04 24 42 0e 01 00 	movl   $0x10e42,(%esp)
    3a33:	e8 92 c9 00 00       	call   103ca <assertion_failure>
    3a38:	e9 82 01 00 00       	jmp    3bbf <msg_send+0x4e1>
    3a3d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a40:	8b 40 72             	mov    0x72(%eax),%eax
    3a43:	89 c2                	mov    %eax,%edx
    3a45:	83 ca 02             	or     $0x2,%edx
    3a48:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a4b:	89 50 72             	mov    %edx,0x72(%eax)
    3a4e:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a51:	8b 40 72             	mov    0x72(%eax),%eax
    3a54:	83 f8 02             	cmp    $0x2,%eax
    3a57:	74 24                	je     3a7d <msg_send+0x39f>
    3a59:	c7 44 24 0c 5c 01 00 	movl   $0x15c,0xc(%esp)
    3a60:	00 
    3a61:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3a68:	00 
    3a69:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3a70:	00 
    3a71:	c7 04 24 5c 0e 01 00 	movl   $0x10e5c,(%esp)
    3a78:	e8 4d c9 00 00       	call   103ca <assertion_failure>
    3a7d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a80:	8b 55 0c             	mov    0xc(%ebp),%edx
    3a83:	89 90 0a 02 00 00    	mov    %edx,0x20a(%eax)
    3a89:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3a8c:	8b 55 10             	mov    0x10(%ebp),%edx
    3a8f:	89 90 02 02 00 00    	mov    %edx,0x202(%eax)
    3a95:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3a98:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    3a9e:	85 c0                	test   %eax,%eax
    3aa0:	74 35                	je     3ad7 <msg_send+0x3f9>
    3aa2:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3aa5:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    3aab:	89 45 f4             	mov    %eax,-0xc(%ebp)
    3aae:	eb 0c                	jmp    3abc <msg_send+0x3de>
    3ab0:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3ab3:	8b 80 16 02 00 00    	mov    0x216(%eax),%eax
    3ab9:	89 45 f4             	mov    %eax,-0xc(%ebp)
    3abc:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3abf:	8b 80 16 02 00 00    	mov    0x216(%eax),%eax
    3ac5:	85 c0                	test   %eax,%eax
    3ac7:	75 e7                	jne    3ab0 <msg_send+0x3d2>
    3ac9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3acc:	8b 55 f0             	mov    -0x10(%ebp),%edx
    3acf:	89 90 16 02 00 00    	mov    %edx,0x216(%eax)
    3ad5:	eb 0c                	jmp    3ae3 <msg_send+0x405>
    3ad7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    3ada:	8b 55 f0             	mov    -0x10(%ebp),%edx
    3add:	89 90 12 02 00 00    	mov    %edx,0x212(%eax)
    3ae3:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3ae6:	c7 80 16 02 00 00 00 	movl   $0x0,0x216(%eax)
    3aed:	00 00 00 
    3af0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3af3:	89 04 24             	mov    %eax,(%esp)
    3af6:	e8 6a fa ff ff       	call   3565 <block>
    3afb:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3afe:	8b 40 72             	mov    0x72(%eax),%eax
    3b01:	83 f8 02             	cmp    $0x2,%eax
    3b04:	74 24                	je     3b2a <msg_send+0x44c>
    3b06:	c7 44 24 0c 6f 01 00 	movl   $0x16f,0xc(%esp)
    3b0d:	00 
    3b0e:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3b15:	00 
    3b16:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3b1d:	00 
    3b1e:	c7 04 24 5c 0e 01 00 	movl   $0x10e5c,(%esp)
    3b25:	e8 a0 c8 00 00       	call   103ca <assertion_failure>
    3b2a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3b2d:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3b33:	85 c0                	test   %eax,%eax
    3b35:	75 24                	jne    3b5b <msg_send+0x47d>
    3b37:	c7 44 24 0c 70 01 00 	movl   $0x170,0xc(%esp)
    3b3e:	00 
    3b3f:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3b46:	00 
    3b47:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3b4e:	00 
    3b4f:	c7 04 24 75 0e 01 00 	movl   $0x10e75,(%esp)
    3b56:	e8 6f c8 00 00       	call   103ca <assertion_failure>
    3b5b:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3b5e:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    3b64:	83 f8 3e             	cmp    $0x3e,%eax
    3b67:	74 24                	je     3b8d <msg_send+0x4af>
    3b69:	c7 44 24 0c 71 01 00 	movl   $0x171,0xc(%esp)
    3b70:	00 
    3b71:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3b78:	00 
    3b79:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3b80:	00 
    3b81:	c7 04 24 26 0e 01 00 	movl   $0x10e26,(%esp)
    3b88:	e8 3d c8 00 00       	call   103ca <assertion_failure>
    3b8d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    3b90:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3b96:	3b 45 0c             	cmp    0xc(%ebp),%eax
    3b99:	74 24                	je     3bbf <msg_send+0x4e1>
    3b9b:	c7 44 24 0c 72 01 00 	movl   $0x172,0xc(%esp)
    3ba2:	00 
    3ba3:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3baa:	00 
    3bab:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3bb2:	00 
    3bb3:	c7 04 24 86 0e 01 00 	movl   $0x10e86,(%esp)
    3bba:	e8 0b c8 00 00       	call   103ca <assertion_failure>
    3bbf:	b8 00 00 00 00       	mov    $0x0,%eax
    3bc4:	83 c4 24             	add    $0x24,%esp
    3bc7:	5b                   	pop    %ebx
    3bc8:	5d                   	pop    %ebp
    3bc9:	c3                   	ret    

00003bca <msg_receive>:
    3bca:	55                   	push   %ebp
    3bcb:	89 e5                	mov    %esp,%ebp
    3bcd:	53                   	push   %ebx
    3bce:	83 ec 64             	sub    $0x64,%esp
    3bd1:	8b 45 08             	mov    0x8(%ebp),%eax
    3bd4:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    3bd7:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    3bde:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    3be5:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    3bec:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    3bef:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3bf4:	89 d1                	mov    %edx,%ecx
    3bf6:	29 c1                	sub    %eax,%ecx
    3bf8:	89 c8                	mov    %ecx,%eax
    3bfa:	d1 f8                	sar    %eax
    3bfc:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3c02:	3b 45 0c             	cmp    0xc(%ebp),%eax
    3c05:	75 24                	jne    3c2b <msg_receive+0x61>
    3c07:	c7 44 24 0c 93 01 00 	movl   $0x193,0xc(%esp)
    3c0e:	00 
    3c0f:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3c16:	00 
    3c17:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3c1e:	00 
    3c1f:	c7 04 24 a0 0e 01 00 	movl   $0x10ea0,(%esp)
    3c26:	e8 9f c7 00 00       	call   103ca <assertion_failure>
    3c2b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3c2e:	8b 80 0e 02 00 00    	mov    0x20e(%eax),%eax
    3c34:	85 c0                	test   %eax,%eax
    3c36:	0f 84 68 01 00 00    	je     3da4 <msg_receive+0x1da>
    3c3c:	83 7d 0c 34          	cmpl   $0x34,0xc(%ebp)
    3c40:	74 0a                	je     3c4c <msg_receive+0x82>
    3c42:	83 7d 0c f6          	cmpl   $0xfffffff6,0xc(%ebp)
    3c46:	0f 85 58 01 00 00    	jne    3da4 <msg_receive+0x1da>
    3c4c:	8d 45 b4             	lea    -0x4c(%ebp),%eax
    3c4f:	89 04 24             	mov    %eax,(%esp)
    3c52:	e8 eb f8 ff ff       	call   3542 <reset_msg>
    3c57:	c7 45 b4 f6 ff ff ff 	movl   $0xfffffff6,-0x4c(%ebp)
    3c5e:	c7 45 b8 01 00 00 00 	movl   $0x1,-0x48(%ebp)
    3c65:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
    3c69:	75 24                	jne    3c8f <msg_receive+0xc5>
    3c6b:	c7 44 24 0c 9f 01 00 	movl   $0x19f,0xc(%esp)
    3c72:	00 
    3c73:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3c7a:	00 
    3c7b:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3c82:	00 
    3c83:	c7 04 24 a6 0d 01 00 	movl   $0x10da6,(%esp)
    3c8a:	e8 3b c7 00 00       	call   103ca <assertion_failure>
    3c8f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    3c92:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3c97:	89 d3                	mov    %edx,%ebx
    3c99:	29 c3                	sub    %eax,%ebx
    3c9b:	89 d8                	mov    %ebx,%eax
    3c9d:	d1 f8                	sar    %eax
    3c9f:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3ca5:	8b 55 10             	mov    0x10(%ebp),%edx
    3ca8:	89 54 24 04          	mov    %edx,0x4(%esp)
    3cac:	89 04 24             	mov    %eax,(%esp)
    3caf:	e8 21 f8 ff ff       	call   34d5 <va2la>
    3cb4:	c7 44 24 08 30 00 00 	movl   $0x30,0x8(%esp)
    3cbb:	00 
    3cbc:	8d 55 b4             	lea    -0x4c(%ebp),%edx
    3cbf:	89 54 24 04          	mov    %edx,0x4(%esp)
    3cc3:	89 04 24             	mov    %eax,(%esp)
    3cc6:	e8 25 c4 00 00       	call   100f0 <memcpy>
    3ccb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3cce:	c7 80 0e 02 00 00 00 	movl   $0x0,0x20e(%eax)
    3cd5:	00 00 00 
    3cd8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3cdb:	8b 40 72             	mov    0x72(%eax),%eax
    3cde:	85 c0                	test   %eax,%eax
    3ce0:	74 24                	je     3d06 <msg_receive+0x13c>
    3ce2:	c7 44 24 0c a5 01 00 	movl   $0x1a5,0xc(%esp)
    3ce9:	00 
    3cea:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3cf1:	00 
    3cf2:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3cf9:	00 
    3cfa:	c7 04 24 c0 0e 01 00 	movl   $0x10ec0,(%esp)
    3d01:	e8 c4 c6 00 00       	call   103ca <assertion_failure>
    3d06:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3d09:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3d0f:	85 c0                	test   %eax,%eax
    3d11:	74 24                	je     3d37 <msg_receive+0x16d>
    3d13:	c7 44 24 0c a6 01 00 	movl   $0x1a6,0xc(%esp)
    3d1a:	00 
    3d1b:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3d22:	00 
    3d23:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3d2a:	00 
    3d2b:	c7 04 24 db 0e 01 00 	movl   $0x10edb,(%esp)
    3d32:	e8 93 c6 00 00       	call   103ca <assertion_failure>
    3d37:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3d3a:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3d40:	83 f8 3e             	cmp    $0x3e,%eax
    3d43:	74 24                	je     3d69 <msg_receive+0x19f>
    3d45:	c7 44 24 0c a7 01 00 	movl   $0x1a7,0xc(%esp)
    3d4c:	00 
    3d4d:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3d54:	00 
    3d55:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3d5c:	00 
    3d5d:	c7 04 24 f4 0e 01 00 	movl   $0x10ef4,(%esp)
    3d64:	e8 61 c6 00 00       	call   103ca <assertion_failure>
    3d69:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3d6c:	8b 80 0e 02 00 00    	mov    0x20e(%eax),%eax
    3d72:	85 c0                	test   %eax,%eax
    3d74:	74 24                	je     3d9a <msg_receive+0x1d0>
    3d76:	c7 44 24 0c a8 01 00 	movl   $0x1a8,0xc(%esp)
    3d7d:	00 
    3d7e:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3d85:	00 
    3d86:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3d8d:	00 
    3d8e:	c7 04 24 18 0f 01 00 	movl   $0x10f18,(%esp)
    3d95:	e8 30 c6 00 00       	call   103ca <assertion_failure>
    3d9a:	b8 00 00 00 00       	mov    $0x0,%eax
    3d9f:	e9 c9 07 00 00       	jmp    456d <msg_receive+0x9a3>
    3da4:	83 7d 0c 34          	cmpl   $0x34,0xc(%ebp)
    3da8:	0f 85 fa 01 00 00    	jne    3fa8 <msg_receive+0x3de>
    3dae:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3db1:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    3db7:	85 c0                	test   %eax,%eax
    3db9:	0f 84 ae 04 00 00    	je     426d <msg_receive+0x6a3>
    3dbf:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3dc2:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    3dc8:	89 45 f4             	mov    %eax,-0xc(%ebp)
    3dcb:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
    3dd2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3dd5:	8b 40 72             	mov    0x72(%eax),%eax
    3dd8:	85 c0                	test   %eax,%eax
    3dda:	74 24                	je     3e00 <msg_receive+0x236>
    3ddc:	c7 44 24 0c b8 01 00 	movl   $0x1b8,0xc(%esp)
    3de3:	00 
    3de4:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3deb:	00 
    3dec:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3df3:	00 
    3df4:	c7 04 24 c0 0e 01 00 	movl   $0x10ec0,(%esp)
    3dfb:	e8 ca c5 00 00       	call   103ca <assertion_failure>
    3e00:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3e03:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3e09:	85 c0                	test   %eax,%eax
    3e0b:	74 24                	je     3e31 <msg_receive+0x267>
    3e0d:	c7 44 24 0c b9 01 00 	movl   $0x1b9,0xc(%esp)
    3e14:	00 
    3e15:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3e1c:	00 
    3e1d:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3e24:	00 
    3e25:	c7 04 24 db 0e 01 00 	movl   $0x10edb,(%esp)
    3e2c:	e8 99 c5 00 00       	call   103ca <assertion_failure>
    3e31:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3e34:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    3e3a:	83 f8 3e             	cmp    $0x3e,%eax
    3e3d:	74 24                	je     3e63 <msg_receive+0x299>
    3e3f:	c7 44 24 0c ba 01 00 	movl   $0x1ba,0xc(%esp)
    3e46:	00 
    3e47:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3e4e:	00 
    3e4f:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3e56:	00 
    3e57:	c7 04 24 3c 0f 01 00 	movl   $0x10f3c,(%esp)
    3e5e:	e8 67 c5 00 00       	call   103ca <assertion_failure>
    3e63:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3e66:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    3e6c:	83 f8 3e             	cmp    $0x3e,%eax
    3e6f:	74 24                	je     3e95 <msg_receive+0x2cb>
    3e71:	c7 44 24 0c bb 01 00 	movl   $0x1bb,0xc(%esp)
    3e78:	00 
    3e79:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3e80:	00 
    3e81:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3e88:	00 
    3e89:	c7 04 24 f4 0e 01 00 	movl   $0x10ef4,(%esp)
    3e90:	e8 35 c5 00 00       	call   103ca <assertion_failure>
    3e95:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3e98:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    3e9e:	85 c0                	test   %eax,%eax
    3ea0:	75 24                	jne    3ec6 <msg_receive+0x2fc>
    3ea2:	c7 44 24 0c bc 01 00 	movl   $0x1bc,0xc(%esp)
    3ea9:	00 
    3eaa:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3eb1:	00 
    3eb2:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3eb9:	00 
    3eba:	c7 04 24 60 0f 01 00 	movl   $0x10f60,(%esp)
    3ec1:	e8 04 c5 00 00       	call   103ca <assertion_failure>
    3ec6:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3ec9:	8b 40 72             	mov    0x72(%eax),%eax
    3ecc:	83 f8 02             	cmp    $0x2,%eax
    3ecf:	74 24                	je     3ef5 <msg_receive+0x32b>
    3ed1:	c7 44 24 0c bd 01 00 	movl   $0x1bd,0xc(%esp)
    3ed8:	00 
    3ed9:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3ee0:	00 
    3ee1:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3ee8:	00 
    3ee9:	c7 04 24 7f 0f 01 00 	movl   $0x10f7f,(%esp)
    3ef0:	e8 d5 c4 00 00       	call   103ca <assertion_failure>
    3ef5:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3ef8:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    3efe:	85 c0                	test   %eax,%eax
    3f00:	75 24                	jne    3f26 <msg_receive+0x35c>
    3f02:	c7 44 24 0c be 01 00 	movl   $0x1be,0xc(%esp)
    3f09:	00 
    3f0a:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3f11:	00 
    3f12:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3f19:	00 
    3f1a:	c7 04 24 96 0f 01 00 	movl   $0x10f96,(%esp)
    3f21:	e8 a4 c4 00 00       	call   103ca <assertion_failure>
    3f26:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3f29:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    3f2f:	83 f8 3e             	cmp    $0x3e,%eax
    3f32:	74 24                	je     3f58 <msg_receive+0x38e>
    3f34:	c7 44 24 0c bf 01 00 	movl   $0x1bf,0xc(%esp)
    3f3b:	00 
    3f3c:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3f43:	00 
    3f44:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3f4b:	00 
    3f4c:	c7 04 24 a5 0f 01 00 	movl   $0x10fa5,(%esp)
    3f53:	e8 72 c4 00 00       	call   103ca <assertion_failure>
    3f58:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3f5b:	8b 90 0a 02 00 00    	mov    0x20a(%eax),%edx
    3f61:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
    3f64:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3f69:	89 cb                	mov    %ecx,%ebx
    3f6b:	29 c3                	sub    %eax,%ebx
    3f6d:	89 d8                	mov    %ebx,%eax
    3f6f:	d1 f8                	sar    %eax
    3f71:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3f77:	39 c2                	cmp    %eax,%edx
    3f79:	0f 84 ee 02 00 00    	je     426d <msg_receive+0x6a3>
    3f7f:	c7 44 24 0c c0 01 00 	movl   $0x1c0,0xc(%esp)
    3f86:	00 
    3f87:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    3f8e:	00 
    3f8f:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    3f96:	00 
    3f97:	c7 04 24 c0 0f 01 00 	movl   $0x10fc0,(%esp)
    3f9e:	e8 27 c4 00 00       	call   103ca <assertion_failure>
    3fa3:	e9 c5 02 00 00       	jmp    426d <msg_receive+0x6a3>
    3fa8:	8b 45 0c             	mov    0xc(%ebp),%eax
    3fab:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    3fb1:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    3fb6:	89 45 f4             	mov    %eax,-0xc(%ebp)
    3fb9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3fbc:	8b 40 72             	mov    0x72(%eax),%eax
    3fbf:	83 e0 02             	and    $0x2,%eax
    3fc2:	85 c0                	test   %eax,%eax
    3fc4:	0f 84 a3 02 00 00    	je     426d <msg_receive+0x6a3>
    3fca:	8b 45 f4             	mov    -0xc(%ebp),%eax
    3fcd:	8b 90 0a 02 00 00    	mov    0x20a(%eax),%edx
    3fd3:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
    3fd6:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    3fdb:	89 cb                	mov    %ecx,%ebx
    3fdd:	29 c3                	sub    %eax,%ebx
    3fdf:	89 d8                	mov    %ebx,%eax
    3fe1:	d1 f8                	sar    %eax
    3fe3:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    3fe9:	39 c2                	cmp    %eax,%edx
    3feb:	0f 85 7c 02 00 00    	jne    426d <msg_receive+0x6a3>
    3ff1:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
    3ff8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    3ffb:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    4001:	89 45 e8             	mov    %eax,-0x18(%ebp)
    4004:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    4008:	0f 85 8c 00 00 00    	jne    409a <msg_receive+0x4d0>
    400e:	c7 44 24 0c d1 01 00 	movl   $0x1d1,0xc(%esp)
    4015:	00 
    4016:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    401d:	00 
    401e:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4025:	00 
    4026:	c7 04 24 e9 0f 01 00 	movl   $0x10fe9,(%esp)
    402d:	e8 98 c3 00 00       	call   103ca <assertion_failure>
    4032:	eb 66                	jmp    409a <msg_receive+0x4d0>
    4034:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4037:	8b 40 72             	mov    0x72(%eax),%eax
    403a:	83 e0 02             	and    $0x2,%eax
    403d:	85 c0                	test   %eax,%eax
    403f:	75 24                	jne    4065 <msg_receive+0x49b>
    4041:	c7 44 24 0c d5 01 00 	movl   $0x1d5,0xc(%esp)
    4048:	00 
    4049:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4050:	00 
    4051:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4058:	00 
    4059:	c7 04 24 eb 0f 01 00 	movl   $0x10feb,(%esp)
    4060:	e8 65 c3 00 00       	call   103ca <assertion_failure>
    4065:	8b 55 e8             	mov    -0x18(%ebp),%edx
    4068:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    406d:	89 d1                	mov    %edx,%ecx
    406f:	29 c1                	sub    %eax,%ecx
    4071:	89 c8                	mov    %ecx,%eax
    4073:	d1 f8                	sar    %eax
    4075:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    407b:	3b 45 0c             	cmp    0xc(%ebp),%eax
    407e:	75 08                	jne    4088 <msg_receive+0x4be>
    4080:	8b 45 e8             	mov    -0x18(%ebp),%eax
    4083:	89 45 f4             	mov    %eax,-0xc(%ebp)
    4086:	eb 18                	jmp    40a0 <msg_receive+0x4d6>
    4088:	8b 45 e8             	mov    -0x18(%ebp),%eax
    408b:	89 45 f0             	mov    %eax,-0x10(%ebp)
    408e:	8b 45 e8             	mov    -0x18(%ebp),%eax
    4091:	8b 80 16 02 00 00    	mov    0x216(%eax),%eax
    4097:	89 45 e8             	mov    %eax,-0x18(%ebp)
    409a:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    409e:	75 94                	jne    4034 <msg_receive+0x46a>
    40a0:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    40a3:	8b 40 72             	mov    0x72(%eax),%eax
    40a6:	85 c0                	test   %eax,%eax
    40a8:	74 24                	je     40ce <msg_receive+0x504>
    40aa:	c7 44 24 0c de 01 00 	movl   $0x1de,0xc(%esp)
    40b1:	00 
    40b2:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    40b9:	00 
    40ba:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    40c1:	00 
    40c2:	c7 04 24 c0 0e 01 00 	movl   $0x10ec0,(%esp)
    40c9:	e8 fc c2 00 00       	call   103ca <assertion_failure>
    40ce:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    40d1:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    40d7:	85 c0                	test   %eax,%eax
    40d9:	74 24                	je     40ff <msg_receive+0x535>
    40db:	c7 44 24 0c df 01 00 	movl   $0x1df,0xc(%esp)
    40e2:	00 
    40e3:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    40ea:	00 
    40eb:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    40f2:	00 
    40f3:	c7 04 24 db 0e 01 00 	movl   $0x10edb,(%esp)
    40fa:	e8 cb c2 00 00       	call   103ca <assertion_failure>
    40ff:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4102:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    4108:	83 f8 3e             	cmp    $0x3e,%eax
    410b:	74 24                	je     4131 <msg_receive+0x567>
    410d:	c7 44 24 0c e0 01 00 	movl   $0x1e0,0xc(%esp)
    4114:	00 
    4115:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    411c:	00 
    411d:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4124:	00 
    4125:	c7 04 24 3c 0f 01 00 	movl   $0x10f3c,(%esp)
    412c:	e8 99 c2 00 00       	call   103ca <assertion_failure>
    4131:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4134:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    413a:	83 f8 3e             	cmp    $0x3e,%eax
    413d:	74 24                	je     4163 <msg_receive+0x599>
    413f:	c7 44 24 0c e1 01 00 	movl   $0x1e1,0xc(%esp)
    4146:	00 
    4147:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    414e:	00 
    414f:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4156:	00 
    4157:	c7 04 24 f4 0e 01 00 	movl   $0x10ef4,(%esp)
    415e:	e8 67 c2 00 00       	call   103ca <assertion_failure>
    4163:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4166:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    416c:	85 c0                	test   %eax,%eax
    416e:	75 24                	jne    4194 <msg_receive+0x5ca>
    4170:	c7 44 24 0c e2 01 00 	movl   $0x1e2,0xc(%esp)
    4177:	00 
    4178:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    417f:	00 
    4180:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4187:	00 
    4188:	c7 04 24 60 0f 01 00 	movl   $0x10f60,(%esp)
    418f:	e8 36 c2 00 00       	call   103ca <assertion_failure>
    4194:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4197:	8b 40 72             	mov    0x72(%eax),%eax
    419a:	83 f8 02             	cmp    $0x2,%eax
    419d:	74 24                	je     41c3 <msg_receive+0x5f9>
    419f:	c7 44 24 0c e3 01 00 	movl   $0x1e3,0xc(%esp)
    41a6:	00 
    41a7:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    41ae:	00 
    41af:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    41b6:	00 
    41b7:	c7 04 24 7f 0f 01 00 	movl   $0x10f7f,(%esp)
    41be:	e8 07 c2 00 00       	call   103ca <assertion_failure>
    41c3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    41c6:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    41cc:	85 c0                	test   %eax,%eax
    41ce:	75 24                	jne    41f4 <msg_receive+0x62a>
    41d0:	c7 44 24 0c e4 01 00 	movl   $0x1e4,0xc(%esp)
    41d7:	00 
    41d8:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    41df:	00 
    41e0:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    41e7:	00 
    41e8:	c7 04 24 96 0f 01 00 	movl   $0x10f96,(%esp)
    41ef:	e8 d6 c1 00 00       	call   103ca <assertion_failure>
    41f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    41f7:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    41fd:	83 f8 3e             	cmp    $0x3e,%eax
    4200:	74 24                	je     4226 <msg_receive+0x65c>
    4202:	c7 44 24 0c e5 01 00 	movl   $0x1e5,0xc(%esp)
    4209:	00 
    420a:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4211:	00 
    4212:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4219:	00 
    421a:	c7 04 24 a5 0f 01 00 	movl   $0x10fa5,(%esp)
    4221:	e8 a4 c1 00 00       	call   103ca <assertion_failure>
    4226:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4229:	8b 90 0a 02 00 00    	mov    0x20a(%eax),%edx
    422f:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
    4232:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    4237:	89 cb                	mov    %ecx,%ebx
    4239:	29 c3                	sub    %eax,%ebx
    423b:	89 d8                	mov    %ebx,%eax
    423d:	d1 f8                	sar    %eax
    423f:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    4245:	39 c2                	cmp    %eax,%edx
    4247:	74 24                	je     426d <msg_receive+0x6a3>
    4249:	c7 44 24 0c e6 01 00 	movl   $0x1e6,0xc(%esp)
    4250:	00 
    4251:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4258:	00 
    4259:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4260:	00 
    4261:	c7 04 24 c0 0f 01 00 	movl   $0x10fc0,(%esp)
    4268:	e8 5d c1 00 00       	call   103ca <assertion_failure>
    426d:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    4271:	0f 84 9e 01 00 00    	je     4415 <msg_receive+0x84b>
    4277:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    427a:	8b 80 12 02 00 00    	mov    0x212(%eax),%eax
    4280:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    4283:	75 4b                	jne    42d0 <msg_receive+0x706>
    4285:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    4289:	74 24                	je     42af <msg_receive+0x6e5>
    428b:	c7 44 24 0c f1 01 00 	movl   $0x1f1,0xc(%esp)
    4292:	00 
    4293:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    429a:	00 
    429b:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    42a2:	00 
    42a3:	c7 04 24 01 10 01 00 	movl   $0x11001,(%esp)
    42aa:	e8 1b c1 00 00       	call   103ca <assertion_failure>
    42af:	8b 45 f4             	mov    -0xc(%ebp),%eax
    42b2:	8b 90 16 02 00 00    	mov    0x216(%eax),%edx
    42b8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    42bb:	89 90 12 02 00 00    	mov    %edx,0x212(%eax)
    42c1:	8b 45 f4             	mov    -0xc(%ebp),%eax
    42c4:	c7 80 16 02 00 00 00 	movl   $0x0,0x216(%eax)
    42cb:	00 00 00 
    42ce:	eb 49                	jmp    4319 <msg_receive+0x74f>
    42d0:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    42d4:	75 24                	jne    42fa <msg_receive+0x730>
    42d6:	c7 44 24 0c f6 01 00 	movl   $0x1f6,0xc(%esp)
    42dd:	00 
    42de:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    42e5:	00 
    42e6:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    42ed:	00 
    42ee:	c7 04 24 0b 10 01 00 	movl   $0x1100b,(%esp)
    42f5:	e8 d0 c0 00 00       	call   103ca <assertion_failure>
    42fa:	8b 45 f4             	mov    -0xc(%ebp),%eax
    42fd:	8b 90 16 02 00 00    	mov    0x216(%eax),%edx
    4303:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4306:	89 90 16 02 00 00    	mov    %edx,0x216(%eax)
    430c:	8b 45 f4             	mov    -0xc(%ebp),%eax
    430f:	c7 80 16 02 00 00 00 	movl   $0x0,0x216(%eax)
    4316:	00 00 00 
    4319:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
    431d:	75 24                	jne    4343 <msg_receive+0x779>
    431f:	c7 44 24 0c fb 01 00 	movl   $0x1fb,0xc(%esp)
    4326:	00 
    4327:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    432e:	00 
    432f:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4336:	00 
    4337:	c7 04 24 a6 0d 01 00 	movl   $0x10da6,(%esp)
    433e:	e8 87 c0 00 00       	call   103ca <assertion_failure>
    4343:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4346:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    434c:	85 c0                	test   %eax,%eax
    434e:	75 24                	jne    4374 <msg_receive+0x7aa>
    4350:	c7 44 24 0c fc 01 00 	movl   $0x1fc,0xc(%esp)
    4357:	00 
    4358:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    435f:	00 
    4360:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4367:	00 
    4368:	c7 04 24 10 10 01 00 	movl   $0x11010,(%esp)
    436f:	e8 56 c0 00 00       	call   103ca <assertion_failure>
    4374:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4377:	8b 90 02 02 00 00    	mov    0x202(%eax),%edx
    437d:	8b 4d f4             	mov    -0xc(%ebp),%ecx
    4380:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    4385:	89 cb                	mov    %ecx,%ebx
    4387:	29 c3                	sub    %eax,%ebx
    4389:	89 d8                	mov    %ebx,%eax
    438b:	d1 f8                	sar    %eax
    438d:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    4393:	89 54 24 04          	mov    %edx,0x4(%esp)
    4397:	89 04 24             	mov    %eax,(%esp)
    439a:	e8 36 f1 ff ff       	call   34d5 <va2la>
    439f:	89 c3                	mov    %eax,%ebx
    43a1:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    43a4:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    43a9:	89 d1                	mov    %edx,%ecx
    43ab:	29 c1                	sub    %eax,%ecx
    43ad:	89 c8                	mov    %ecx,%eax
    43af:	d1 f8                	sar    %eax
    43b1:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    43b7:	8b 55 10             	mov    0x10(%ebp),%edx
    43ba:	89 54 24 04          	mov    %edx,0x4(%esp)
    43be:	89 04 24             	mov    %eax,(%esp)
    43c1:	e8 0f f1 ff ff       	call   34d5 <va2la>
    43c6:	c7 44 24 08 30 00 00 	movl   $0x30,0x8(%esp)
    43cd:	00 
    43ce:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    43d2:	89 04 24             	mov    %eax,(%esp)
    43d5:	e8 16 bd 00 00       	call   100f0 <memcpy>
    43da:	8b 45 f4             	mov    -0xc(%ebp),%eax
    43dd:	c7 80 02 02 00 00 00 	movl   $0x0,0x202(%eax)
    43e4:	00 00 00 
    43e7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    43ea:	c7 80 0a 02 00 00 3e 	movl   $0x3e,0x20a(%eax)
    43f1:	00 00 00 
    43f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    43f7:	8b 40 72             	mov    0x72(%eax),%eax
    43fa:	89 c2                	mov    %eax,%edx
    43fc:	83 e2 fd             	and    $0xfffffffd,%edx
    43ff:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4402:	89 50 72             	mov    %edx,0x72(%eax)
    4405:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4408:	89 04 24             	mov    %eax,(%esp)
    440b:	e8 90 f1 ff ff       	call   35a0 <unblock>
    4410:	e9 53 01 00 00       	jmp    4568 <msg_receive+0x99e>
    4415:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4418:	8b 40 72             	mov    0x72(%eax),%eax
    441b:	89 c2                	mov    %eax,%edx
    441d:	83 ca 04             	or     $0x4,%edx
    4420:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4423:	89 50 72             	mov    %edx,0x72(%eax)
    4426:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4429:	8b 55 10             	mov    0x10(%ebp),%edx
    442c:	89 90 02 02 00 00    	mov    %edx,0x202(%eax)
    4432:	83 7d 0c 34          	cmpl   $0x34,0xc(%ebp)
    4436:	75 0f                	jne    4447 <msg_receive+0x87d>
    4438:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    443b:	c7 80 06 02 00 00 34 	movl   $0x34,0x206(%eax)
    4442:	00 00 00 
    4445:	eb 21                	jmp    4468 <msg_receive+0x89e>
    4447:	8b 55 f4             	mov    -0xc(%ebp),%edx
    444a:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    444f:	89 d3                	mov    %edx,%ebx
    4451:	29 c3                	sub    %eax,%ebx
    4453:	89 d8                	mov    %ebx,%eax
    4455:	d1 f8                	sar    %eax
    4457:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    445d:	89 c2                	mov    %eax,%edx
    445f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4462:	89 90 06 02 00 00    	mov    %edx,0x206(%eax)
    4468:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    446b:	89 04 24             	mov    %eax,(%esp)
    446e:	e8 f2 f0 ff ff       	call   3565 <block>
    4473:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4476:	8b 40 72             	mov    0x72(%eax),%eax
    4479:	83 f8 04             	cmp    $0x4,%eax
    447c:	74 24                	je     44a2 <msg_receive+0x8d8>
    447e:	c7 44 24 0c 16 02 00 	movl   $0x216,0xc(%esp)
    4485:	00 
    4486:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    448d:	00 
    448e:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4495:	00 
    4496:	c7 04 24 1c 10 01 00 	movl   $0x1101c,(%esp)
    449d:	e8 28 bf 00 00       	call   103ca <assertion_failure>
    44a2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    44a5:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    44ab:	85 c0                	test   %eax,%eax
    44ad:	75 24                	jne    44d3 <msg_receive+0x909>
    44af:	c7 44 24 0c 17 02 00 	movl   $0x217,0xc(%esp)
    44b6:	00 
    44b7:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    44be:	00 
    44bf:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    44c6:	00 
    44c7:	c7 04 24 3f 10 01 00 	movl   $0x1103f,(%esp)
    44ce:	e8 f7 be 00 00       	call   103ca <assertion_failure>
    44d3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    44d6:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    44dc:	83 f8 3e             	cmp    $0x3e,%eax
    44df:	75 24                	jne    4505 <msg_receive+0x93b>
    44e1:	c7 44 24 0c 18 02 00 	movl   $0x218,0xc(%esp)
    44e8:	00 
    44e9:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    44f0:	00 
    44f1:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    44f8:	00 
    44f9:	c7 04 24 58 10 01 00 	movl   $0x11058,(%esp)
    4500:	e8 c5 be 00 00       	call   103ca <assertion_failure>
    4505:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    4508:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    450e:	83 f8 3e             	cmp    $0x3e,%eax
    4511:	74 24                	je     4537 <msg_receive+0x96d>
    4513:	c7 44 24 0c 19 02 00 	movl   $0x219,0xc(%esp)
    451a:	00 
    451b:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4522:	00 
    4523:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    452a:	00 
    452b:	c7 04 24 f4 0e 01 00 	movl   $0x10ef4,(%esp)
    4532:	e8 93 be 00 00       	call   103ca <assertion_failure>
    4537:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    453a:	8b 80 0e 02 00 00    	mov    0x20e(%eax),%eax
    4540:	85 c0                	test   %eax,%eax
    4542:	74 24                	je     4568 <msg_receive+0x99e>
    4544:	c7 44 24 0c 1a 02 00 	movl   $0x21a,0xc(%esp)
    454b:	00 
    454c:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4553:	00 
    4554:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    455b:	00 
    455c:	c7 04 24 18 0f 01 00 	movl   $0x10f18,(%esp)
    4563:	e8 62 be 00 00       	call   103ca <assertion_failure>
    4568:	b8 00 00 00 00       	mov    $0x0,%eax
    456d:	83 c4 64             	add    $0x64,%esp
    4570:	5b                   	pop    %ebx
    4571:	5d                   	pop    %ebp
    4572:	c3                   	ret    

00004573 <inform_int>:
    4573:	55                   	push   %ebp
    4574:	89 e5                	mov    %esp,%ebp
    4576:	83 ec 28             	sub    $0x28,%esp
    4579:	8b 45 08             	mov    0x8(%ebp),%eax
    457c:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    4582:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    4587:	89 45 f4             	mov    %eax,-0xc(%ebp)
    458a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    458d:	8b 40 72             	mov    0x72(%eax),%eax
    4590:	83 e0 04             	and    $0x4,%eax
    4593:	85 c0                	test   %eax,%eax
    4595:	0f 84 75 01 00 00    	je     4710 <inform_int+0x19d>
    459b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    459e:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    45a4:	83 f8 f6             	cmp    $0xfffffff6,%eax
    45a7:	74 12                	je     45bb <inform_int+0x48>
    45a9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45ac:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    45b2:	83 f8 34             	cmp    $0x34,%eax
    45b5:	0f 85 55 01 00 00    	jne    4710 <inform_int+0x19d>
    45bb:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45be:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    45c4:	c7 00 f6 ff ff ff    	movl   $0xfffffff6,(%eax)
    45ca:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45cd:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    45d3:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
    45da:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45dd:	c7 80 02 02 00 00 00 	movl   $0x0,0x202(%eax)
    45e4:	00 00 00 
    45e7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45ea:	c7 80 0e 02 00 00 00 	movl   $0x0,0x20e(%eax)
    45f1:	00 00 00 
    45f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    45f7:	8b 40 72             	mov    0x72(%eax),%eax
    45fa:	89 c2                	mov    %eax,%edx
    45fc:	83 e2 fb             	and    $0xfffffffb,%edx
    45ff:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4602:	89 50 72             	mov    %edx,0x72(%eax)
    4605:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4608:	c7 80 06 02 00 00 3e 	movl   $0x3e,0x206(%eax)
    460f:	00 00 00 
    4612:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4615:	8b 40 72             	mov    0x72(%eax),%eax
    4618:	85 c0                	test   %eax,%eax
    461a:	74 24                	je     4640 <inform_int+0xcd>
    461c:	c7 44 24 0c 36 02 00 	movl   $0x236,0xc(%esp)
    4623:	00 
    4624:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    462b:	00 
    462c:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4633:	00 
    4634:	c7 04 24 49 0d 01 00 	movl   $0x10d49,(%esp)
    463b:	e8 8a bd 00 00       	call   103ca <assertion_failure>
    4640:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4643:	89 04 24             	mov    %eax,(%esp)
    4646:	e8 55 ef ff ff       	call   35a0 <unblock>
    464b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    464e:	8b 40 72             	mov    0x72(%eax),%eax
    4651:	85 c0                	test   %eax,%eax
    4653:	74 24                	je     4679 <inform_int+0x106>
    4655:	c7 44 24 0c 39 02 00 	movl   $0x239,0xc(%esp)
    465c:	00 
    465d:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4664:	00 
    4665:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    466c:	00 
    466d:	c7 04 24 49 0d 01 00 	movl   $0x10d49,(%esp)
    4674:	e8 51 bd 00 00       	call   103ca <assertion_failure>
    4679:	8b 45 f4             	mov    -0xc(%ebp),%eax
    467c:	8b 80 02 02 00 00    	mov    0x202(%eax),%eax
    4682:	85 c0                	test   %eax,%eax
    4684:	74 24                	je     46aa <inform_int+0x137>
    4686:	c7 44 24 0c 3a 02 00 	movl   $0x23a,0xc(%esp)
    468d:	00 
    468e:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    4695:	00 
    4696:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    469d:	00 
    469e:	c7 04 24 7c 10 01 00 	movl   $0x1107c,(%esp)
    46a5:	e8 20 bd 00 00       	call   103ca <assertion_failure>
    46aa:	8b 45 f4             	mov    -0xc(%ebp),%eax
    46ad:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    46b3:	83 f8 3e             	cmp    $0x3e,%eax
    46b6:	74 24                	je     46dc <inform_int+0x169>
    46b8:	c7 44 24 0c 3b 02 00 	movl   $0x23b,0xc(%esp)
    46bf:	00 
    46c0:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    46c7:	00 
    46c8:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    46cf:	00 
    46d0:	c7 04 24 88 10 01 00 	movl   $0x11088,(%esp)
    46d7:	e8 ee bc 00 00       	call   103ca <assertion_failure>
    46dc:	8b 45 f4             	mov    -0xc(%ebp),%eax
    46df:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    46e5:	83 f8 3e             	cmp    $0x3e,%eax
    46e8:	74 33                	je     471d <inform_int+0x1aa>
    46ea:	c7 44 24 0c 3c 02 00 	movl   $0x23c,0xc(%esp)
    46f1:	00 
    46f2:	c7 44 24 08 68 0c 01 	movl   $0x10c68,0x8(%esp)
    46f9:	00 
    46fa:	c7 44 24 04 68 0c 01 	movl   $0x10c68,0x4(%esp)
    4701:	00 
    4702:	c7 04 24 9f 10 01 00 	movl   $0x1109f,(%esp)
    4709:	e8 bc bc 00 00       	call   103ca <assertion_failure>
    470e:	eb 0d                	jmp    471d <inform_int+0x1aa>
    4710:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4713:	c7 80 0e 02 00 00 01 	movl   $0x1,0x20e(%eax)
    471a:	00 00 00 
    471d:	c9                   	leave  
    471e:	c3                   	ret    

0000471f <dumproc>:
    471f:	55                   	push   %ebp
    4720:	89 e5                	mov    %esp,%ebp
    4722:	81 ec 28 04 00 00    	sub    $0x428,%esp
    4728:	c7 45 f0 24 00 00 00 	movl   $0x24,-0x10(%ebp)
    472f:	c7 45 ec 36 03 00 00 	movl   $0x336,-0x14(%ebp)
    4736:	c7 44 24 04 0c 00 00 	movl   $0xc,0x4(%esp)
    473d:	00 
    473e:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    4745:	e8 35 08 00 00       	call   4f7f <out_byte>
    474a:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    4751:	00 
    4752:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    4759:	e8 21 08 00 00       	call   4f7f <out_byte>
    475e:	c7 44 24 04 0d 00 00 	movl   $0xd,0x4(%esp)
    4765:	00 
    4766:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    476d:	e8 0d 08 00 00       	call   4f7f <out_byte>
    4772:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    4779:	00 
    477a:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    4781:	e8 f9 07 00 00       	call   4f7f <out_byte>
    4786:	8b 55 08             	mov    0x8(%ebp),%edx
    4789:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    478e:	89 d1                	mov    %edx,%ecx
    4790:	29 c1                	sub    %eax,%ecx
    4792:	89 c8                	mov    %ecx,%eax
    4794:	d1 f8                	sar    %eax
    4796:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    479c:	89 44 24 08          	mov    %eax,0x8(%esp)
    47a0:	c7 44 24 04 b4 10 01 	movl   $0x110b4,0x4(%esp)
    47a7:	00 
    47a8:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    47ae:	89 04 24             	mov    %eax,(%esp)
    47b1:	e8 0d b9 00 00       	call   100c3 <sprintf>
    47b6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    47b9:	89 44 24 04          	mov    %eax,0x4(%esp)
    47bd:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    47c3:	89 04 24             	mov    %eax,(%esp)
    47c6:	e8 6c 07 00 00       	call   4f37 <disp_color_str>
    47cb:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    47d2:	eb 42                	jmp    4816 <dumproc+0xf7>
    47d4:	8b 55 08             	mov    0x8(%ebp),%edx
    47d7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    47da:	8d 04 02             	lea    (%edx,%eax,1),%eax
    47dd:	0f b6 00             	movzbl (%eax),%eax
    47e0:	0f b6 c0             	movzbl %al,%eax
    47e3:	89 44 24 08          	mov    %eax,0x8(%esp)
    47e7:	c7 44 24 04 d2 10 01 	movl   $0x110d2,0x4(%esp)
    47ee:	00 
    47ef:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    47f5:	89 04 24             	mov    %eax,(%esp)
    47f8:	e8 c6 b8 00 00       	call   100c3 <sprintf>
    47fd:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4800:	89 44 24 04          	mov    %eax,0x4(%esp)
    4804:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    480a:	89 04 24             	mov    %eax,(%esp)
    480d:	e8 25 07 00 00       	call   4f37 <disp_color_str>
    4812:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    4816:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4819:	3b 45 ec             	cmp    -0x14(%ebp),%eax
    481c:	7c b6                	jl     47d4 <dumproc+0xb5>
    481e:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4821:	89 44 24 04          	mov    %eax,0x4(%esp)
    4825:	c7 04 24 d6 10 01 00 	movl   $0x110d6,(%esp)
    482c:	e8 06 07 00 00       	call   4f37 <disp_color_str>
    4831:	c7 44 24 08 34 00 00 	movl   $0x34,0x8(%esp)
    4838:	00 
    4839:	c7 44 24 04 d9 10 01 	movl   $0x110d9,0x4(%esp)
    4840:	00 
    4841:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4847:	89 04 24             	mov    %eax,(%esp)
    484a:	e8 74 b8 00 00       	call   100c3 <sprintf>
    484f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4852:	89 44 24 04          	mov    %eax,0x4(%esp)
    4856:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    485c:	89 04 24             	mov    %eax,(%esp)
    485f:	e8 d3 06 00 00       	call   4f37 <disp_color_str>
    4864:	c7 44 24 08 3e 00 00 	movl   $0x3e,0x8(%esp)
    486b:	00 
    486c:	c7 44 24 04 e5 10 01 	movl   $0x110e5,0x4(%esp)
    4873:	00 
    4874:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    487a:	89 04 24             	mov    %eax,(%esp)
    487d:	e8 41 b8 00 00       	call   100c3 <sprintf>
    4882:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4885:	89 44 24 04          	mov    %eax,0x4(%esp)
    4889:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    488f:	89 04 24             	mov    %eax,(%esp)
    4892:	e8 a0 06 00 00       	call   4f37 <disp_color_str>
    4897:	8b 45 f0             	mov    -0x10(%ebp),%eax
    489a:	89 44 24 04          	mov    %eax,0x4(%esp)
    489e:	c7 04 24 f5 10 01 00 	movl   $0x110f5,(%esp)
    48a5:	e8 8d 06 00 00       	call   4f37 <disp_color_str>
    48aa:	8b 45 08             	mov    0x8(%ebp),%eax
    48ad:	0f b7 40 48          	movzwl 0x48(%eax),%eax
    48b1:	0f b7 c0             	movzwl %ax,%eax
    48b4:	89 44 24 08          	mov    %eax,0x8(%esp)
    48b8:	c7 44 24 04 f7 10 01 	movl   $0x110f7,0x4(%esp)
    48bf:	00 
    48c0:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    48c6:	89 04 24             	mov    %eax,(%esp)
    48c9:	e8 f5 b7 00 00       	call   100c3 <sprintf>
    48ce:	8b 45 f0             	mov    -0x10(%ebp),%eax
    48d1:	89 44 24 04          	mov    %eax,0x4(%esp)
    48d5:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    48db:	89 04 24             	mov    %eax,(%esp)
    48de:	e8 54 06 00 00       	call   4f37 <disp_color_str>
    48e3:	8b 45 08             	mov    0x8(%ebp),%eax
    48e6:	8b 40 5a             	mov    0x5a(%eax),%eax
    48e9:	89 44 24 08          	mov    %eax,0x8(%esp)
    48ed:	c7 44 24 04 08 11 01 	movl   $0x11108,0x4(%esp)
    48f4:	00 
    48f5:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    48fb:	89 04 24             	mov    %eax,(%esp)
    48fe:	e8 c0 b7 00 00       	call   100c3 <sprintf>
    4903:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4906:	89 44 24 04          	mov    %eax,0x4(%esp)
    490a:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4910:	89 04 24             	mov    %eax,(%esp)
    4913:	e8 1f 06 00 00       	call   4f37 <disp_color_str>
    4918:	8b 45 08             	mov    0x8(%ebp),%eax
    491b:	8b 40 5e             	mov    0x5e(%eax),%eax
    491e:	89 44 24 08          	mov    %eax,0x8(%esp)
    4922:	c7 44 24 04 19 11 01 	movl   $0x11119,0x4(%esp)
    4929:	00 
    492a:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4930:	89 04 24             	mov    %eax,(%esp)
    4933:	e8 8b b7 00 00       	call   100c3 <sprintf>
    4938:	8b 45 f0             	mov    -0x10(%ebp),%eax
    493b:	89 44 24 04          	mov    %eax,0x4(%esp)
    493f:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4945:	89 04 24             	mov    %eax,(%esp)
    4948:	e8 ea 05 00 00       	call   4f37 <disp_color_str>
    494d:	8b 45 08             	mov    0x8(%ebp),%eax
    4950:	83 c0 62             	add    $0x62,%eax
    4953:	89 44 24 08          	mov    %eax,0x8(%esp)
    4957:	c7 44 24 04 2b 11 01 	movl   $0x1112b,0x4(%esp)
    495e:	00 
    495f:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4965:	89 04 24             	mov    %eax,(%esp)
    4968:	e8 56 b7 00 00       	call   100c3 <sprintf>
    496d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4970:	89 44 24 04          	mov    %eax,0x4(%esp)
    4974:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    497a:	89 04 24             	mov    %eax,(%esp)
    497d:	e8 b5 05 00 00       	call   4f37 <disp_color_str>
    4982:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4985:	89 44 24 04          	mov    %eax,0x4(%esp)
    4989:	c7 04 24 f5 10 01 00 	movl   $0x110f5,(%esp)
    4990:	e8 a2 05 00 00       	call   4f37 <disp_color_str>
    4995:	8b 45 08             	mov    0x8(%ebp),%eax
    4998:	8b 40 72             	mov    0x72(%eax),%eax
    499b:	89 44 24 08          	mov    %eax,0x8(%esp)
    499f:	c7 44 24 04 37 11 01 	movl   $0x11137,0x4(%esp)
    49a6:	00 
    49a7:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    49ad:	89 04 24             	mov    %eax,(%esp)
    49b0:	e8 0e b7 00 00       	call   100c3 <sprintf>
    49b5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    49b8:	89 44 24 04          	mov    %eax,0x4(%esp)
    49bc:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    49c2:	89 04 24             	mov    %eax,(%esp)
    49c5:	e8 6d 05 00 00       	call   4f37 <disp_color_str>
    49ca:	8b 45 08             	mov    0x8(%ebp),%eax
    49cd:	8b 80 06 02 00 00    	mov    0x206(%eax),%eax
    49d3:	89 44 24 08          	mov    %eax,0x8(%esp)
    49d7:	c7 44 24 04 46 11 01 	movl   $0x11146,0x4(%esp)
    49de:	00 
    49df:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    49e5:	89 04 24             	mov    %eax,(%esp)
    49e8:	e8 d6 b6 00 00       	call   100c3 <sprintf>
    49ed:	8b 45 f0             	mov    -0x10(%ebp),%eax
    49f0:	89 44 24 04          	mov    %eax,0x4(%esp)
    49f4:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    49fa:	89 04 24             	mov    %eax,(%esp)
    49fd:	e8 35 05 00 00       	call   4f37 <disp_color_str>
    4a02:	8b 45 08             	mov    0x8(%ebp),%eax
    4a05:	8b 80 0a 02 00 00    	mov    0x20a(%eax),%eax
    4a0b:	89 44 24 08          	mov    %eax,0x8(%esp)
    4a0f:	c7 44 24 04 58 11 01 	movl   $0x11158,0x4(%esp)
    4a16:	00 
    4a17:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4a1d:	89 04 24             	mov    %eax,(%esp)
    4a20:	e8 9e b6 00 00       	call   100c3 <sprintf>
    4a25:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4a28:	89 44 24 04          	mov    %eax,0x4(%esp)
    4a2c:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4a32:	89 04 24             	mov    %eax,(%esp)
    4a35:	e8 fd 04 00 00       	call   4f37 <disp_color_str>
    4a3a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4a3d:	89 44 24 04          	mov    %eax,0x4(%esp)
    4a41:	c7 04 24 f5 10 01 00 	movl   $0x110f5,(%esp)
    4a48:	e8 ea 04 00 00       	call   4f37 <disp_color_str>
    4a4d:	8b 45 08             	mov    0x8(%ebp),%eax
    4a50:	8b 80 0e 02 00 00    	mov    0x20e(%eax),%eax
    4a56:	89 44 24 08          	mov    %eax,0x8(%esp)
    4a5a:	c7 44 24 04 68 11 01 	movl   $0x11168,0x4(%esp)
    4a61:	00 
    4a62:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4a68:	89 04 24             	mov    %eax,(%esp)
    4a6b:	e8 53 b6 00 00       	call   100c3 <sprintf>
    4a70:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4a73:	89 44 24 04          	mov    %eax,0x4(%esp)
    4a77:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    4a7d:	89 04 24             	mov    %eax,(%esp)
    4a80:	e8 b2 04 00 00       	call   4f37 <disp_color_str>
    4a85:	c9                   	leave  
    4a86:	c3                   	ret    

00004a87 <dump_msg>:
    4a87:	55                   	push   %ebp
    4a88:	89 e5                	mov    %esp,%ebp
    4a8a:	57                   	push   %edi
    4a8b:	56                   	push   %esi
    4a8c:	53                   	push   %ebx
    4a8d:	81 ec 9c 00 00 00    	sub    $0x9c,%esp
    4a93:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    4a9a:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    4a9e:	74 07                	je     4aa7 <dump_msg+0x20>
    4aa0:	bf 7d 11 01 00       	mov    $0x1117d,%edi
    4aa5:	eb 05                	jmp    4aac <dump_msg+0x25>
    4aa7:	bf f5 10 01 00       	mov    $0x110f5,%edi
    4aac:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    4ab0:	74 09                	je     4abb <dump_msg+0x34>
    4ab2:	c7 45 d4 7d 11 01 00 	movl   $0x1117d,-0x2c(%ebp)
    4ab9:	eb 07                	jmp    4ac2 <dump_msg+0x3b>
    4abb:	c7 45 d4 f5 10 01 00 	movl   $0x110f5,-0x2c(%ebp)
    4ac2:	8b 45 0c             	mov    0xc(%ebp),%eax
    4ac5:	8b 40 2c             	mov    0x2c(%eax),%eax
    4ac8:	89 45 cc             	mov    %eax,-0x34(%ebp)
    4acb:	8b 45 0c             	mov    0xc(%ebp),%eax
    4ace:	8b 40 28             	mov    0x28(%eax),%eax
    4ad1:	89 45 c8             	mov    %eax,-0x38(%ebp)
    4ad4:	8b 45 0c             	mov    0xc(%ebp),%eax
    4ad7:	8b 40 14             	mov    0x14(%eax),%eax
    4ada:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    4add:	8b 45 0c             	mov    0xc(%ebp),%eax
    4ae0:	8b 40 10             	mov    0x10(%eax),%eax
    4ae3:	89 45 c0             	mov    %eax,-0x40(%ebp)
    4ae6:	8b 45 0c             	mov    0xc(%ebp),%eax
    4ae9:	8b 40 0c             	mov    0xc(%eax),%eax
    4aec:	89 45 bc             	mov    %eax,-0x44(%ebp)
    4aef:	8b 45 0c             	mov    0xc(%ebp),%eax
    4af2:	8b 40 08             	mov    0x8(%eax),%eax
    4af5:	89 45 b8             	mov    %eax,-0x48(%ebp)
    4af8:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    4afc:	74 09                	je     4b07 <dump_msg+0x80>
    4afe:	c7 45 d0 7e 11 01 00 	movl   $0x1117e,-0x30(%ebp)
    4b05:	eb 07                	jmp    4b0e <dump_msg+0x87>
    4b07:	c7 45 d0 80 11 01 00 	movl   $0x11180,-0x30(%ebp)
    4b0e:	8b 45 0c             	mov    0xc(%ebp),%eax
    4b11:	8b 40 04             	mov    0x4(%eax),%eax
    4b14:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    4b17:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    4b1b:	74 07                	je     4b24 <dump_msg+0x9d>
    4b1d:	b9 7e 11 01 00       	mov    $0x1117e,%ecx
    4b22:	eb 05                	jmp    4b29 <dump_msg+0xa2>
    4b24:	b9 80 11 01 00       	mov    $0x11180,%ecx
    4b29:	8b 45 0c             	mov    0xc(%ebp),%eax
    4b2c:	8b 30                	mov    (%eax),%esi
    4b2e:	8b 45 0c             	mov    0xc(%ebp),%eax
    4b31:	8b 00                	mov    (%eax),%eax
    4b33:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    4b39:	83 c0 60             	add    $0x60,%eax
    4b3c:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    4b41:	8d 58 02             	lea    0x2(%eax),%ebx
    4b44:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    4b48:	74 07                	je     4b51 <dump_msg+0xca>
    4b4a:	b8 7d 11 01 00       	mov    $0x1117d,%eax
    4b4f:	eb 05                	jmp    4b56 <dump_msg+0xcf>
    4b51:	b8 80 11 01 00       	mov    $0x11180,%eax
    4b56:	8b 55 0c             	mov    0xc(%ebp),%edx
    4b59:	89 7c 24 40          	mov    %edi,0x40(%esp)
    4b5d:	8b 7d d4             	mov    -0x2c(%ebp),%edi
    4b60:	89 7c 24 3c          	mov    %edi,0x3c(%esp)
    4b64:	8b 7d cc             	mov    -0x34(%ebp),%edi
    4b67:	89 7c 24 38          	mov    %edi,0x38(%esp)
    4b6b:	8b 7d c8             	mov    -0x38(%ebp),%edi
    4b6e:	89 7c 24 34          	mov    %edi,0x34(%esp)
    4b72:	8b 7d c4             	mov    -0x3c(%ebp),%edi
    4b75:	89 7c 24 30          	mov    %edi,0x30(%esp)
    4b79:	8b 7d c0             	mov    -0x40(%ebp),%edi
    4b7c:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
    4b80:	8b 7d bc             	mov    -0x44(%ebp),%edi
    4b83:	89 7c 24 28          	mov    %edi,0x28(%esp)
    4b87:	8b 7d b8             	mov    -0x48(%ebp),%edi
    4b8a:	89 7c 24 24          	mov    %edi,0x24(%esp)
    4b8e:	8b 7d d0             	mov    -0x30(%ebp),%edi
    4b91:	89 7c 24 20          	mov    %edi,0x20(%esp)
    4b95:	8b 7d b4             	mov    -0x4c(%ebp),%edi
    4b98:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
    4b9c:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    4ba0:	89 74 24 14          	mov    %esi,0x14(%esp)
    4ba4:	89 5c 24 10          	mov    %ebx,0x10(%esp)
    4ba8:	89 44 24 0c          	mov    %eax,0xc(%esp)
    4bac:	89 54 24 08          	mov    %edx,0x8(%esp)
    4bb0:	8b 45 08             	mov    0x8(%ebp),%eax
    4bb3:	89 44 24 04          	mov    %eax,0x4(%esp)
    4bb7:	c7 04 24 8c 11 01 00 	movl   $0x1118c,(%esp)
    4bbe:	e8 c7 b1 00 00       	call   fd8a <printl>
    4bc3:	81 c4 9c 00 00 00    	add    $0x9c,%esp
    4bc9:	5b                   	pop    %ebx
    4bca:	5e                   	pop    %esi
    4bcb:	5f                   	pop    %edi
    4bcc:	5d                   	pop    %ebp
    4bcd:	c3                   	ret    
    4bce:	90                   	nop
    4bcf:	90                   	nop

00004bd0 <task_sys>:
    4bd0:	55                   	push   %ebp
    4bd1:	89 e5                	mov    %esp,%ebp
    4bd3:	53                   	push   %ebx
    4bd4:	83 ec 64             	sub    $0x64,%esp
    4bd7:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    4bda:	89 44 24 08          	mov    %eax,0x8(%esp)
    4bde:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    4be5:	00 
    4be6:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    4bed:	e8 86 b5 00 00       	call   10178 <send_recv>
    4bf2:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    4bf5:	89 45 f4             	mov    %eax,-0xc(%ebp)
    4bf8:	8b 45 c8             	mov    -0x38(%ebp),%eax
    4bfb:	83 f8 03             	cmp    $0x3,%eax
    4bfe:	74 49                	je     4c49 <task_sys+0x79>
    4c00:	83 f8 03             	cmp    $0x3,%eax
    4c03:	7f 0a                	jg     4c0f <task_sys+0x3f>
    4c05:	83 f8 02             	cmp    $0x2,%eax
    4c08:	74 18                	je     4c22 <task_sys+0x52>
    4c0a:	e9 07 01 00 00       	jmp    4d16 <task_sys+0x146>
    4c0f:	83 f8 04             	cmp    $0x4,%eax
    4c12:	74 61                	je     4c75 <task_sys+0xa5>
    4c14:	83 f8 0a             	cmp    $0xa,%eax
    4c17:	0f 84 c1 00 00 00    	je     4cde <task_sys+0x10e>
    4c1d:	e9 f4 00 00 00       	jmp    4d16 <task_sys+0x146>
    4c22:	a1 e0 01 05 00       	mov    0x501e0,%eax
    4c27:	89 45 cc             	mov    %eax,-0x34(%ebp)
    4c2a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    4c2d:	89 44 24 08          	mov    %eax,0x8(%esp)
    4c31:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4c34:	89 44 24 04          	mov    %eax,0x4(%esp)
    4c38:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    4c3f:	e8 34 b5 00 00       	call   10178 <send_recv>
    4c44:	e9 da 00 00 00       	jmp    4d23 <task_sys+0x153>
    4c49:	c7 45 c8 2d 00 00 00 	movl   $0x2d,-0x38(%ebp)
    4c50:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4c53:	89 45 d0             	mov    %eax,-0x30(%ebp)
    4c56:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    4c59:	89 44 24 08          	mov    %eax,0x8(%esp)
    4c5d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4c60:	89 44 24 04          	mov    %eax,0x4(%esp)
    4c64:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    4c6b:	e8 08 b5 00 00       	call   10178 <send_recv>
    4c70:	e9 ae 00 00 00       	jmp    4d23 <task_sys+0x153>
    4c75:	c7 45 c8 2d 00 00 00 	movl   $0x2d,-0x38(%ebp)
    4c7c:	8d 45 ac             	lea    -0x54(%ebp),%eax
    4c7f:	89 04 24             	mov    %eax,(%esp)
    4c82:	e8 a1 00 00 00       	call   4d28 <get_rtc_time>
    4c87:	8d 45 ac             	lea    -0x54(%ebp),%eax
    4c8a:	89 44 24 04          	mov    %eax,0x4(%esp)
    4c8e:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    4c95:	e8 3b e8 ff ff       	call   34d5 <va2la>
    4c9a:	89 c3                	mov    %eax,%ebx
    4c9c:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4c9f:	89 44 24 04          	mov    %eax,0x4(%esp)
    4ca3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4ca6:	89 04 24             	mov    %eax,(%esp)
    4ca9:	e8 27 e8 ff ff       	call   34d5 <va2la>
    4cae:	c7 44 24 08 18 00 00 	movl   $0x18,0x8(%esp)
    4cb5:	00 
    4cb6:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    4cba:	89 04 24             	mov    %eax,(%esp)
    4cbd:	e8 2e b4 00 00       	call   100f0 <memcpy>
    4cc2:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    4cc5:	89 44 24 08          	mov    %eax,0x8(%esp)
    4cc9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4ccc:	89 44 24 04          	mov    %eax,0x4(%esp)
    4cd0:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    4cd7:	e8 9c b4 00 00       	call   10178 <send_recv>
    4cdc:	eb 45                	jmp    4d23 <task_sys+0x153>
    4cde:	c7 45 c8 2d 00 00 00 	movl   $0x2d,-0x38(%ebp)
    4ce5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    4ce8:	89 44 24 04          	mov    %eax,0x4(%esp)
    4cec:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4cef:	89 04 24             	mov    %eax,(%esp)
    4cf2:	e8 33 08 00 00       	call   552a <do_uname>
    4cf7:	89 45 cc             	mov    %eax,-0x34(%ebp)
    4cfa:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    4cfd:	89 44 24 08          	mov    %eax,0x8(%esp)
    4d01:	8b 45 f4             	mov    -0xc(%ebp),%eax
    4d04:	89 44 24 04          	mov    %eax,0x4(%esp)
    4d08:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    4d0f:	e8 64 b4 00 00       	call   10178 <send_recv>
    4d14:	eb 0d                	jmp    4d23 <task_sys+0x153>
    4d16:	c7 04 24 da 11 01 00 	movl   $0x111da,(%esp)
    4d1d:	e8 15 d2 ff ff       	call   1f37 <panic>
    4d22:	90                   	nop
    4d23:	e9 af fe ff ff       	jmp    4bd7 <task_sys+0x7>

00004d28 <get_rtc_time>:
    4d28:	55                   	push   %ebp
    4d29:	89 e5                	mov    %esp,%ebp
    4d2b:	83 ec 18             	sub    $0x18,%esp
    4d2e:	c7 04 24 09 00 00 00 	movl   $0x9,(%esp)
    4d35:	e8 80 01 00 00       	call   4eba <read_register>
    4d3a:	89 c2                	mov    %eax,%edx
    4d3c:	8b 45 08             	mov    0x8(%ebp),%eax
    4d3f:	89 10                	mov    %edx,(%eax)
    4d41:	c7 04 24 08 00 00 00 	movl   $0x8,(%esp)
    4d48:	e8 6d 01 00 00       	call   4eba <read_register>
    4d4d:	89 c2                	mov    %eax,%edx
    4d4f:	8b 45 08             	mov    0x8(%ebp),%eax
    4d52:	89 50 04             	mov    %edx,0x4(%eax)
    4d55:	c7 04 24 07 00 00 00 	movl   $0x7,(%esp)
    4d5c:	e8 59 01 00 00       	call   4eba <read_register>
    4d61:	89 c2                	mov    %eax,%edx
    4d63:	8b 45 08             	mov    0x8(%ebp),%eax
    4d66:	89 50 08             	mov    %edx,0x8(%eax)
    4d69:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    4d70:	e8 45 01 00 00       	call   4eba <read_register>
    4d75:	89 c2                	mov    %eax,%edx
    4d77:	8b 45 08             	mov    0x8(%ebp),%eax
    4d7a:	89 50 0c             	mov    %edx,0xc(%eax)
    4d7d:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    4d84:	e8 31 01 00 00       	call   4eba <read_register>
    4d89:	89 c2                	mov    %eax,%edx
    4d8b:	8b 45 08             	mov    0x8(%ebp),%eax
    4d8e:	89 50 10             	mov    %edx,0x10(%eax)
    4d91:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    4d98:	e8 1d 01 00 00       	call   4eba <read_register>
    4d9d:	89 c2                	mov    %eax,%edx
    4d9f:	8b 45 08             	mov    0x8(%ebp),%eax
    4da2:	89 50 14             	mov    %edx,0x14(%eax)
    4da5:	c7 04 24 0b 00 00 00 	movl   $0xb,(%esp)
    4dac:	e8 09 01 00 00       	call   4eba <read_register>
    4db1:	83 e0 04             	and    $0x4,%eax
    4db4:	85 c0                	test   %eax,%eax
    4db6:	0f 85 e7 00 00 00    	jne    4ea3 <get_rtc_time+0x17b>
    4dbc:	8b 45 08             	mov    0x8(%ebp),%eax
    4dbf:	8b 00                	mov    (%eax),%eax
    4dc1:	89 c2                	mov    %eax,%edx
    4dc3:	c1 ea 04             	shr    $0x4,%edx
    4dc6:	89 d0                	mov    %edx,%eax
    4dc8:	c1 e0 02             	shl    $0x2,%eax
    4dcb:	01 d0                	add    %edx,%eax
    4dcd:	01 c0                	add    %eax,%eax
    4dcf:	89 c2                	mov    %eax,%edx
    4dd1:	8b 45 08             	mov    0x8(%ebp),%eax
    4dd4:	8b 00                	mov    (%eax),%eax
    4dd6:	83 e0 0f             	and    $0xf,%eax
    4dd9:	01 c2                	add    %eax,%edx
    4ddb:	8b 45 08             	mov    0x8(%ebp),%eax
    4dde:	89 10                	mov    %edx,(%eax)
    4de0:	8b 45 08             	mov    0x8(%ebp),%eax
    4de3:	8b 40 04             	mov    0x4(%eax),%eax
    4de6:	89 c2                	mov    %eax,%edx
    4de8:	c1 ea 04             	shr    $0x4,%edx
    4deb:	89 d0                	mov    %edx,%eax
    4ded:	c1 e0 02             	shl    $0x2,%eax
    4df0:	01 d0                	add    %edx,%eax
    4df2:	01 c0                	add    %eax,%eax
    4df4:	89 c2                	mov    %eax,%edx
    4df6:	8b 45 08             	mov    0x8(%ebp),%eax
    4df9:	8b 40 04             	mov    0x4(%eax),%eax
    4dfc:	83 e0 0f             	and    $0xf,%eax
    4dff:	01 c2                	add    %eax,%edx
    4e01:	8b 45 08             	mov    0x8(%ebp),%eax
    4e04:	89 50 04             	mov    %edx,0x4(%eax)
    4e07:	8b 45 08             	mov    0x8(%ebp),%eax
    4e0a:	8b 40 08             	mov    0x8(%eax),%eax
    4e0d:	89 c2                	mov    %eax,%edx
    4e0f:	c1 ea 04             	shr    $0x4,%edx
    4e12:	89 d0                	mov    %edx,%eax
    4e14:	c1 e0 02             	shl    $0x2,%eax
    4e17:	01 d0                	add    %edx,%eax
    4e19:	01 c0                	add    %eax,%eax
    4e1b:	89 c2                	mov    %eax,%edx
    4e1d:	8b 45 08             	mov    0x8(%ebp),%eax
    4e20:	8b 40 08             	mov    0x8(%eax),%eax
    4e23:	83 e0 0f             	and    $0xf,%eax
    4e26:	01 c2                	add    %eax,%edx
    4e28:	8b 45 08             	mov    0x8(%ebp),%eax
    4e2b:	89 50 08             	mov    %edx,0x8(%eax)
    4e2e:	8b 45 08             	mov    0x8(%ebp),%eax
    4e31:	8b 40 0c             	mov    0xc(%eax),%eax
    4e34:	89 c2                	mov    %eax,%edx
    4e36:	c1 ea 04             	shr    $0x4,%edx
    4e39:	89 d0                	mov    %edx,%eax
    4e3b:	c1 e0 02             	shl    $0x2,%eax
    4e3e:	01 d0                	add    %edx,%eax
    4e40:	01 c0                	add    %eax,%eax
    4e42:	89 c2                	mov    %eax,%edx
    4e44:	8b 45 08             	mov    0x8(%ebp),%eax
    4e47:	8b 40 0c             	mov    0xc(%eax),%eax
    4e4a:	83 e0 0f             	and    $0xf,%eax
    4e4d:	01 c2                	add    %eax,%edx
    4e4f:	8b 45 08             	mov    0x8(%ebp),%eax
    4e52:	89 50 0c             	mov    %edx,0xc(%eax)
    4e55:	8b 45 08             	mov    0x8(%ebp),%eax
    4e58:	8b 40 10             	mov    0x10(%eax),%eax
    4e5b:	89 c2                	mov    %eax,%edx
    4e5d:	c1 ea 04             	shr    $0x4,%edx
    4e60:	89 d0                	mov    %edx,%eax
    4e62:	c1 e0 02             	shl    $0x2,%eax
    4e65:	01 d0                	add    %edx,%eax
    4e67:	01 c0                	add    %eax,%eax
    4e69:	89 c2                	mov    %eax,%edx
    4e6b:	8b 45 08             	mov    0x8(%ebp),%eax
    4e6e:	8b 40 10             	mov    0x10(%eax),%eax
    4e71:	83 e0 0f             	and    $0xf,%eax
    4e74:	01 c2                	add    %eax,%edx
    4e76:	8b 45 08             	mov    0x8(%ebp),%eax
    4e79:	89 50 10             	mov    %edx,0x10(%eax)
    4e7c:	8b 45 08             	mov    0x8(%ebp),%eax
    4e7f:	8b 40 14             	mov    0x14(%eax),%eax
    4e82:	89 c2                	mov    %eax,%edx
    4e84:	c1 ea 04             	shr    $0x4,%edx
    4e87:	89 d0                	mov    %edx,%eax
    4e89:	c1 e0 02             	shl    $0x2,%eax
    4e8c:	01 d0                	add    %edx,%eax
    4e8e:	01 c0                	add    %eax,%eax
    4e90:	89 c2                	mov    %eax,%edx
    4e92:	8b 45 08             	mov    0x8(%ebp),%eax
    4e95:	8b 40 14             	mov    0x14(%eax),%eax
    4e98:	83 e0 0f             	and    $0xf,%eax
    4e9b:	01 c2                	add    %eax,%edx
    4e9d:	8b 45 08             	mov    0x8(%ebp),%eax
    4ea0:	89 50 14             	mov    %edx,0x14(%eax)
    4ea3:	8b 45 08             	mov    0x8(%ebp),%eax
    4ea6:	8b 00                	mov    (%eax),%eax
    4ea8:	8d 90 d0 07 00 00    	lea    0x7d0(%eax),%edx
    4eae:	8b 45 08             	mov    0x8(%ebp),%eax
    4eb1:	89 10                	mov    %edx,(%eax)
    4eb3:	b8 00 00 00 00       	mov    $0x0,%eax
    4eb8:	c9                   	leave  
    4eb9:	c3                   	ret    

00004eba <read_register>:
    4eba:	55                   	push   %ebp
    4ebb:	89 e5                	mov    %esp,%ebp
    4ebd:	83 ec 28             	sub    $0x28,%esp
    4ec0:	8b 45 08             	mov    0x8(%ebp),%eax
    4ec3:	88 45 f4             	mov    %al,-0xc(%ebp)
    4ec6:	0f b6 45 f4          	movzbl -0xc(%ebp),%eax
    4eca:	0f b6 c0             	movzbl %al,%eax
    4ecd:	89 44 24 04          	mov    %eax,0x4(%esp)
    4ed1:	c7 04 24 70 00 00 00 	movl   $0x70,(%esp)
    4ed8:	e8 a2 00 00 00       	call   4f7f <out_byte>
    4edd:	c7 04 24 71 00 00 00 	movl   $0x71,(%esp)
    4ee4:	e8 a2 00 00 00       	call   4f8b <in_byte>
    4ee9:	0f b6 c0             	movzbl %al,%eax
    4eec:	c9                   	leave  
    4eed:	c3                   	ret    
    4eee:	90                   	nop
    4eef:	90                   	nop

00004ef0 <disp_str>:
    4ef0:	55                   	push   %ebp
    4ef1:	89 e5                	mov    %esp,%ebp
    4ef3:	8b 75 08             	mov    0x8(%ebp),%esi
    4ef6:	8b 3d 68 ed 04 00    	mov    0x4ed68,%edi
    4efc:	b4 0f                	mov    $0xf,%ah

00004efe <disp_str.1>:
    4efe:	ac                   	lods   %ds:(%esi),%al
    4eff:	84 c0                	test   %al,%al
    4f01:	74 2c                	je     4f2f <disp_str.2>
    4f03:	3c 0a                	cmp    $0xa,%al
    4f05:	75 19                	jne    4f20 <disp_str.3>
    4f07:	50                   	push   %eax
    4f08:	89 f8                	mov    %edi,%eax
    4f0a:	b3 a0                	mov    $0xa0,%bl
    4f0c:	f6 f3                	div    %bl
    4f0e:	25 ff 00 00 00       	and    $0xff,%eax
    4f13:	40                   	inc    %eax
    4f14:	b3 a0                	mov    $0xa0,%bl
    4f16:	f6 e3                	mul    %bl
    4f18:	89 c7                	mov    %eax,%edi
    4f1a:	58                   	pop    %eax
    4f1b:	e9 de ff ff ff       	jmp    4efe <disp_str.1>

00004f20 <disp_str.3>:
    4f20:	65 66 89 07          	mov    %ax,%gs:(%edi)
    4f24:	81 c7 02 00 00 00    	add    $0x2,%edi
    4f2a:	e9 cf ff ff ff       	jmp    4efe <disp_str.1>

00004f2f <disp_str.2>:
    4f2f:	89 3d 68 ed 04 00    	mov    %edi,0x4ed68
    4f35:	5d                   	pop    %ebp
    4f36:	c3                   	ret    

00004f37 <disp_color_str>:
    4f37:	55                   	push   %ebp
    4f38:	89 e5                	mov    %esp,%ebp
    4f3a:	8b 75 08             	mov    0x8(%ebp),%esi
    4f3d:	8b 3d 68 ed 04 00    	mov    0x4ed68,%edi
    4f43:	8a 65 0c             	mov    0xc(%ebp),%ah

00004f46 <disp_color_str.1>:
    4f46:	ac                   	lods   %ds:(%esi),%al
    4f47:	84 c0                	test   %al,%al
    4f49:	74 2c                	je     4f77 <disp_color_str.2>
    4f4b:	3c 0a                	cmp    $0xa,%al
    4f4d:	75 19                	jne    4f68 <disp_color_str.3>
    4f4f:	50                   	push   %eax
    4f50:	89 f8                	mov    %edi,%eax
    4f52:	b3 a0                	mov    $0xa0,%bl
    4f54:	f6 f3                	div    %bl
    4f56:	25 ff 00 00 00       	and    $0xff,%eax
    4f5b:	40                   	inc    %eax
    4f5c:	b3 a0                	mov    $0xa0,%bl
    4f5e:	f6 e3                	mul    %bl
    4f60:	89 c7                	mov    %eax,%edi
    4f62:	58                   	pop    %eax
    4f63:	e9 de ff ff ff       	jmp    4f46 <disp_color_str.1>

00004f68 <disp_color_str.3>:
    4f68:	65 66 89 07          	mov    %ax,%gs:(%edi)
    4f6c:	81 c7 02 00 00 00    	add    $0x2,%edi
    4f72:	e9 cf ff ff ff       	jmp    4f46 <disp_color_str.1>

00004f77 <disp_color_str.2>:
    4f77:	89 3d 68 ed 04 00    	mov    %edi,0x4ed68
    4f7d:	5d                   	pop    %ebp
    4f7e:	c3                   	ret    

00004f7f <out_byte>:
    4f7f:	8b 54 24 04          	mov    0x4(%esp),%edx
    4f83:	8a 44 24 08          	mov    0x8(%esp),%al
    4f87:	ee                   	out    %al,(%dx)
    4f88:	90                   	nop
    4f89:	90                   	nop
    4f8a:	c3                   	ret    

00004f8b <in_byte>:
    4f8b:	8b 54 24 04          	mov    0x4(%esp),%edx
    4f8f:	31 c0                	xor    %eax,%eax
    4f91:	ec                   	in     (%dx),%al
    4f92:	90                   	nop
    4f93:	90                   	nop
    4f94:	c3                   	ret    

00004f95 <port_read>:
    4f95:	8b 54 24 04          	mov    0x4(%esp),%edx
    4f99:	8b 7c 24 08          	mov    0x8(%esp),%edi
    4f9d:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
    4fa1:	d1 e9                	shr    %ecx
    4fa3:	fc                   	cld    
    4fa4:	f3 66 6d             	rep insw (%dx),%es:(%edi)
    4fa7:	c3                   	ret    

00004fa8 <port_write>:
    4fa8:	8b 54 24 04          	mov    0x4(%esp),%edx
    4fac:	8b 74 24 08          	mov    0x8(%esp),%esi
    4fb0:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
    4fb4:	d1 e9                	shr    %ecx
    4fb6:	fc                   	cld    
    4fb7:	f3 66 6f             	rep outsw %ds:(%esi),(%dx)
    4fba:	c3                   	ret    

00004fbb <disable_irq>:
    4fbb:	8b 4c 24 04          	mov    0x4(%esp),%ecx
    4fbf:	9c                   	pushf  
    4fc0:	fa                   	cli    
    4fc1:	b4 01                	mov    $0x1,%ah
    4fc3:	d2 c4                	rol    %cl,%ah
    4fc5:	80 f9 08             	cmp    $0x8,%cl
    4fc8:	73 11                	jae    4fdb <disable_8>

00004fca <disable_0>:
    4fca:	e4 21                	in     $0x21,%al
    4fcc:	84 e0                	test   %ah,%al
    4fce:	75 1c                	jne    4fec <dis_already>
    4fd0:	08 e0                	or     %ah,%al
    4fd2:	e6 21                	out    %al,$0x21
    4fd4:	9d                   	popf   
    4fd5:	b8 01 00 00 00       	mov    $0x1,%eax
    4fda:	c3                   	ret    

00004fdb <disable_8>:
    4fdb:	e4 a1                	in     $0xa1,%al
    4fdd:	84 e0                	test   %ah,%al
    4fdf:	75 0b                	jne    4fec <dis_already>
    4fe1:	08 e0                	or     %ah,%al
    4fe3:	e6 a1                	out    %al,$0xa1
    4fe5:	9d                   	popf   
    4fe6:	b8 01 00 00 00       	mov    $0x1,%eax
    4feb:	c3                   	ret    

00004fec <dis_already>:
    4fec:	9d                   	popf   
    4fed:	31 c0                	xor    %eax,%eax
    4fef:	c3                   	ret    

00004ff0 <enable_irq>:
    4ff0:	8b 4c 24 04          	mov    0x4(%esp),%ecx
    4ff4:	9c                   	pushf  
    4ff5:	fa                   	cli    
    4ff6:	b4 fe                	mov    $0xfe,%ah
    4ff8:	d2 c4                	rol    %cl,%ah
    4ffa:	80 f9 08             	cmp    $0x8,%cl
    4ffd:	73 08                	jae    5007 <enable_8>

00004fff <enable_0>:
    4fff:	e4 21                	in     $0x21,%al
    5001:	20 e0                	and    %ah,%al
    5003:	e6 21                	out    %al,$0x21
    5005:	9d                   	popf   
    5006:	c3                   	ret    

00005007 <enable_8>:
    5007:	e4 a1                	in     $0xa1,%al
    5009:	20 e0                	and    %ah,%al
    500b:	e6 a1                	out    %al,$0xa1
    500d:	9d                   	popf   
    500e:	c3                   	ret    

0000500f <disable_int>:
    500f:	fa                   	cli    
    5010:	c3                   	ret    

00005011 <enable_int>:
    5011:	fb                   	sti    
    5012:	c3                   	ret    

00005013 <glitter>:
    5013:	50                   	push   %eax
    5014:	53                   	push   %ebx
    5015:	52                   	push   %edx
    5016:	a1 5a 50 00 00       	mov    0x505a,%eax
    501b:	40                   	inc    %eax
    501c:	3d 42 00 00 00       	cmp    $0x42,%eax
    5021:	74 05                	je     5028 <glitter.1>
    5023:	e9 02 00 00 00       	jmp    502a <glitter.2>

00005028 <glitter.1>:
    5028:	31 c0                	xor    %eax,%eax

0000502a <glitter.2>:
    502a:	a3 5a 50 00 00       	mov    %eax,0x505a
    502f:	8a 90 5e 50 00 00    	mov    0x505e(%eax),%dl
    5035:	31 c0                	xor    %eax,%eax
    5037:	8a 44 24 10          	mov    0x10(%esp),%al
    503b:	b3 50                	mov    $0x50,%bl
    503d:	f6 e3                	mul    %bl
    503f:	66 8b 5c 24 14       	mov    0x14(%esp),%bx
    5044:	66 01 d8             	add    %bx,%ax
    5047:	66 d1 e0             	shl    %ax
    504a:	0f b7 c0             	movzwl %ax,%eax
    504d:	65 88 10             	mov    %dl,%gs:(%eax)
    5050:	40                   	inc    %eax
    5051:	65 c6 00 04          	movb   $0x4,%gs:(%eax)
    5055:	e9 46 00 00 00       	jmp    50a0 <glitter.end>

0000505a <glitter.current_char>:
    505a:	00 00                	add    %al,(%eax)
	...

0000505e <glitter.glitter_str>:
    505e:	2d 5c 7c 2f 31       	sub    $0x312f7c5c,%eax
    5063:	32 33                	xor    (%ebx),%dh
    5065:	34 35                	xor    $0x35,%al
    5067:	36                   	ss
    5068:	37                   	aaa    
    5069:	38 39                	cmp    %bh,(%ecx)
    506b:	30 61 62             	xor    %ah,0x62(%ecx)
    506e:	63 64 65 66          	arpl   %sp,0x66(%ebp,%eiz,2)
    5072:	67 68 69 6a 6b 6c    	addr16 push $0x6c6b6a69
    5078:	6d                   	insl   (%dx),%es:(%edi)
    5079:	6e                   	outsb  %ds:(%esi),(%dx)
    507a:	6f                   	outsl  %ds:(%esi),(%dx)
    507b:	70 71                	jo     50ee <out_word+0x1e>
    507d:	72 73                	jb     50f2 <in_long>
    507f:	74 75                	je     50f6 <in_long+0x4>
    5081:	76 77                	jbe    50fa <in_long+0x8>
    5083:	78 79                	js     50fe <in_long+0xc>
    5085:	7a 41                	jp     50c8 <in_word+0x24>
    5087:	42                   	inc    %edx
    5088:	43                   	inc    %ebx
    5089:	44                   	inc    %esp
    508a:	45                   	inc    %ebp
    508b:	46                   	inc    %esi
    508c:	47                   	inc    %edi
    508d:	48                   	dec    %eax
    508e:	49                   	dec    %ecx
    508f:	4a                   	dec    %edx
    5090:	4b                   	dec    %ebx
    5091:	4c                   	dec    %esp
    5092:	4d                   	dec    %ebp
    5093:	4e                   	dec    %esi
    5094:	4f                   	dec    %edi
    5095:	50                   	push   %eax
    5096:	51                   	push   %ecx
    5097:	52                   	push   %edx
    5098:	53                   	push   %ebx
    5099:	54                   	push   %esp
    509a:	55                   	push   %ebp
    509b:	56                   	push   %esi
    509c:	57                   	push   %edi
    509d:	58                   	pop    %eax
    509e:	59                   	pop    %ecx
    509f:	5a                   	pop    %edx

000050a0 <glitter.end>:
    50a0:	5a                   	pop    %edx
    50a1:	5b                   	pop    %ebx
    50a2:	58                   	pop    %eax
    50a3:	c3                   	ret    

000050a4 <in_word>:
    50a4:	55                   	push   %ebp
    50a5:	89 e5                	mov    %esp,%ebp
    50a7:	53                   	push   %ebx
    50a8:	83 ec 18             	sub    $0x18,%esp
    50ab:	8b 45 08             	mov    0x8(%ebp),%eax
    50ae:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
    50b2:	0f b7 45 e8          	movzwl -0x18(%ebp),%eax
    50b6:	66 89 45 e6          	mov    %ax,-0x1a(%ebp)
    50ba:	0f b7 55 e6          	movzwl -0x1a(%ebp),%edx
    50be:	66 ed                	in     (%dx),%ax
    50c0:	89 c3                	mov    %eax,%ebx
    50c2:	66 89 5d fa          	mov    %bx,-0x6(%ebp)
    50c6:	0f b7 45 fa          	movzwl -0x6(%ebp),%eax
    50ca:	83 c4 18             	add    $0x18,%esp
    50cd:	5b                   	pop    %ebx
    50ce:	5d                   	pop    %ebp
    50cf:	c3                   	ret    

000050d0 <out_word>:
    50d0:	55                   	push   %ebp
    50d1:	89 e5                	mov    %esp,%ebp
    50d3:	83 ec 18             	sub    $0x18,%esp
    50d6:	8b 55 08             	mov    0x8(%ebp),%edx
    50d9:	8b 45 0c             	mov    0xc(%ebp),%eax
    50dc:	66 89 55 ec          	mov    %dx,-0x14(%ebp)
    50e0:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
    50e4:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
    50e8:	89 c2                	mov    %eax,%edx
    50ea:	66 ef                	out    %ax,(%dx)
    50ec:	66 89 45 fe          	mov    %ax,-0x2(%ebp)
    50f0:	c9                   	leave  
    50f1:	c3                   	ret    

000050f2 <in_long>:
    50f2:	55                   	push   %ebp
    50f3:	89 e5                	mov    %esp,%ebp
    50f5:	53                   	push   %ebx
    50f6:	83 ec 18             	sub    $0x18,%esp
    50f9:	8b 45 08             	mov    0x8(%ebp),%eax
    50fc:	66 89 45 e8          	mov    %ax,-0x18(%ebp)
    5100:	0f b7 45 e8          	movzwl -0x18(%ebp),%eax
    5104:	66 89 45 e6          	mov    %ax,-0x1a(%ebp)
    5108:	0f b7 55 e6          	movzwl -0x1a(%ebp),%edx
    510c:	ed                   	in     (%dx),%eax
    510d:	89 c3                	mov    %eax,%ebx
    510f:	89 5d f8             	mov    %ebx,-0x8(%ebp)
    5112:	8b 45 f8             	mov    -0x8(%ebp),%eax
    5115:	83 c4 18             	add    $0x18,%esp
    5118:	5b                   	pop    %ebx
    5119:	5d                   	pop    %ebp
    511a:	c3                   	ret    

0000511b <out_long>:
    511b:	55                   	push   %ebp
    511c:	89 e5                	mov    %esp,%ebp
    511e:	83 ec 14             	sub    $0x14,%esp
    5121:	8b 45 08             	mov    0x8(%ebp),%eax
    5124:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
    5128:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
    512c:	89 c2                	mov    %eax,%edx
    512e:	ef                   	out    %eax,(%dx)
    512f:	89 45 fc             	mov    %eax,-0x4(%ebp)
    5132:	c9                   	leave  
    5133:	c3                   	ret    

00005134 <get_boot_params>:
    5134:	55                   	push   %ebp
    5135:	89 e5                	mov    %esp,%ebp
    5137:	83 ec 28             	sub    $0x28,%esp
    513a:	c7 45 f4 00 09 00 00 	movl   $0x900,-0xc(%ebp)
    5141:	8b 45 f4             	mov    -0xc(%ebp),%eax
    5144:	8b 00                	mov    (%eax),%eax
    5146:	3d 07 b0 00 00       	cmp    $0xb007,%eax
    514b:	74 24                	je     5171 <get_boot_params+0x3d>
    514d:	c7 44 24 0c 4b 00 00 	movl   $0x4b,0xc(%esp)
    5154:	00 
    5155:	c7 44 24 08 ec 11 01 	movl   $0x111ec,0x8(%esp)
    515c:	00 
    515d:	c7 44 24 04 ec 11 01 	movl   $0x111ec,0x4(%esp)
    5164:	00 
    5165:	c7 04 24 f3 11 01 00 	movl   $0x111f3,(%esp)
    516c:	e8 59 b2 00 00       	call   103ca <assertion_failure>
    5171:	8b 45 f4             	mov    -0xc(%ebp),%eax
    5174:	83 c0 04             	add    $0x4,%eax
    5177:	8b 10                	mov    (%eax),%edx
    5179:	8b 45 08             	mov    0x8(%ebp),%eax
    517c:	89 10                	mov    %edx,(%eax)
    517e:	8b 45 f4             	mov    -0xc(%ebp),%eax
    5181:	83 c0 08             	add    $0x8,%eax
    5184:	8b 00                	mov    (%eax),%eax
    5186:	89 c2                	mov    %eax,%edx
    5188:	8b 45 08             	mov    0x8(%ebp),%eax
    518b:	89 50 04             	mov    %edx,0x4(%eax)
    518e:	8b 45 08             	mov    0x8(%ebp),%eax
    5191:	8b 40 04             	mov    0x4(%eax),%eax
    5194:	c7 44 24 08 04 00 00 	movl   $0x4,0x8(%esp)
    519b:	00 
    519c:	c7 44 24 04 11 12 01 	movl   $0x11211,0x4(%esp)
    51a3:	00 
    51a4:	89 04 24             	mov    %eax,(%esp)
    51a7:	e8 b3 b0 00 00       	call   1025f <memcmp>
    51ac:	85 c0                	test   %eax,%eax
    51ae:	74 24                	je     51d4 <get_boot_params+0xa0>
    51b0:	c7 44 24 0c 54 00 00 	movl   $0x54,0xc(%esp)
    51b7:	00 
    51b8:	c7 44 24 08 ec 11 01 	movl   $0x111ec,0x8(%esp)
    51bf:	00 
    51c0:	c7 44 24 04 ec 11 01 	movl   $0x111ec,0x4(%esp)
    51c7:	00 
    51c8:	c7 04 24 18 12 01 00 	movl   $0x11218,(%esp)
    51cf:	e8 f6 b1 00 00       	call   103ca <assertion_failure>
    51d4:	c9                   	leave  
    51d5:	c3                   	ret    

000051d6 <get_kernel_map>:
    51d6:	55                   	push   %ebp
    51d7:	89 e5                	mov    %esp,%ebp
    51d9:	83 ec 38             	sub    $0x38,%esp
    51dc:	8d 45 d8             	lea    -0x28(%ebp),%eax
    51df:	89 04 24             	mov    %eax,(%esp)
    51e2:	e8 4d ff ff ff       	call   5134 <get_boot_params>
    51e7:	8b 45 dc             	mov    -0x24(%ebp),%eax
    51ea:	89 45 ec             	mov    %eax,-0x14(%ebp)
    51ed:	8b 45 ec             	mov    -0x14(%ebp),%eax
    51f0:	c7 44 24 08 04 00 00 	movl   $0x4,0x8(%esp)
    51f7:	00 
    51f8:	c7 44 24 04 11 12 01 	movl   $0x11211,0x4(%esp)
    51ff:	00 
    5200:	89 04 24             	mov    %eax,(%esp)
    5203:	e8 57 b0 00 00       	call   1025f <memcmp>
    5208:	85 c0                	test   %eax,%eax
    520a:	74 0a                	je     5216 <get_kernel_map+0x40>
    520c:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    5211:	e9 df 00 00 00       	jmp    52f5 <get_kernel_map+0x11f>
    5216:	8b 45 08             	mov    0x8(%ebp),%eax
    5219:	c7 00 ff ff ff ff    	movl   $0xffffffff,(%eax)
    521f:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    5226:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    522d:	eb 6e                	jmp    529d <get_kernel_map+0xc7>
    522f:	8b 55 dc             	mov    -0x24(%ebp),%edx
    5232:	8b 45 ec             	mov    -0x14(%ebp),%eax
    5235:	8b 48 20             	mov    0x20(%eax),%ecx
    5238:	8b 45 ec             	mov    -0x14(%ebp),%eax
    523b:	0f b7 40 2e          	movzwl 0x2e(%eax),%eax
    523f:	0f b7 c0             	movzwl %ax,%eax
    5242:	0f af 45 f0          	imul   -0x10(%ebp),%eax
    5246:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    5249:	8d 04 02             	lea    (%edx,%eax,1),%eax
    524c:	89 45 e8             	mov    %eax,-0x18(%ebp)
    524f:	8b 45 e8             	mov    -0x18(%ebp),%eax
    5252:	8b 40 08             	mov    0x8(%eax),%eax
    5255:	83 e0 02             	and    $0x2,%eax
    5258:	85 c0                	test   %eax,%eax
    525a:	74 3d                	je     5299 <get_kernel_map+0xc3>
    525c:	8b 45 e8             	mov    -0x18(%ebp),%eax
    525f:	8b 40 0c             	mov    0xc(%eax),%eax
    5262:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    5265:	8b 45 e8             	mov    -0x18(%ebp),%eax
    5268:	8b 50 0c             	mov    0xc(%eax),%edx
    526b:	8b 45 e8             	mov    -0x18(%ebp),%eax
    526e:	8b 40 14             	mov    0x14(%eax),%eax
    5271:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5274:	89 45 e0             	mov    %eax,-0x20(%ebp)
    5277:	8b 45 08             	mov    0x8(%ebp),%eax
    527a:	8b 10                	mov    (%eax),%edx
    527c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    527f:	39 c2                	cmp    %eax,%edx
    5281:	76 08                	jbe    528b <get_kernel_map+0xb5>
    5283:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    5286:	8b 45 08             	mov    0x8(%ebp),%eax
    5289:	89 10                	mov    %edx,(%eax)
    528b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    528e:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    5291:	76 06                	jbe    5299 <get_kernel_map+0xc3>
    5293:	8b 45 e0             	mov    -0x20(%ebp),%eax
    5296:	89 45 f4             	mov    %eax,-0xc(%ebp)
    5299:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    529d:	8b 45 ec             	mov    -0x14(%ebp),%eax
    52a0:	0f b7 40 30          	movzwl 0x30(%eax),%eax
    52a4:	0f b7 c0             	movzwl %ax,%eax
    52a7:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    52aa:	7f 83                	jg     522f <get_kernel_map+0x59>
    52ac:	8b 45 08             	mov    0x8(%ebp),%eax
    52af:	8b 00                	mov    (%eax),%eax
    52b1:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    52b4:	72 24                	jb     52da <get_kernel_map+0x104>
    52b6:	c7 44 24 0c 82 00 00 	movl   $0x82,0xc(%esp)
    52bd:	00 
    52be:	c7 44 24 08 ec 11 01 	movl   $0x111ec,0x8(%esp)
    52c5:	00 
    52c6:	c7 44 24 04 ec 11 01 	movl   $0x111ec,0x4(%esp)
    52cd:	00 
    52ce:	c7 04 24 47 12 01 00 	movl   $0x11247,(%esp)
    52d5:	e8 f0 b0 00 00       	call   103ca <assertion_failure>
    52da:	8b 45 08             	mov    0x8(%ebp),%eax
    52dd:	8b 00                	mov    (%eax),%eax
    52df:	8b 55 f4             	mov    -0xc(%ebp),%edx
    52e2:	89 d1                	mov    %edx,%ecx
    52e4:	29 c1                	sub    %eax,%ecx
    52e6:	89 c8                	mov    %ecx,%eax
    52e8:	8d 50 ff             	lea    -0x1(%eax),%edx
    52eb:	8b 45 0c             	mov    0xc(%ebp),%eax
    52ee:	89 10                	mov    %edx,(%eax)
    52f0:	b8 00 00 00 00       	mov    $0x0,%eax
    52f5:	c9                   	leave  
    52f6:	c3                   	ret    

000052f7 <itoa>:
    52f7:	55                   	push   %ebp
    52f8:	89 e5                	mov    %esp,%ebp
    52fa:	53                   	push   %ebx
    52fb:	83 ec 10             	sub    $0x10,%esp
    52fe:	8b 45 08             	mov    0x8(%ebp),%eax
    5301:	89 45 f8             	mov    %eax,-0x8(%ebp)
    5304:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    530b:	8b 45 f8             	mov    -0x8(%ebp),%eax
    530e:	c6 00 30             	movb   $0x30,(%eax)
    5311:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    5315:	8b 45 f8             	mov    -0x8(%ebp),%eax
    5318:	c6 00 78             	movb   $0x78,(%eax)
    531b:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    531f:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    5323:	75 0c                	jne    5331 <itoa+0x3a>
    5325:	8b 45 f8             	mov    -0x8(%ebp),%eax
    5328:	c6 00 30             	movb   $0x30,(%eax)
    532b:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    532f:	eb 61                	jmp    5392 <itoa+0x9b>
    5331:	c7 45 f0 1c 00 00 00 	movl   $0x1c,-0x10(%ebp)
    5338:	eb 52                	jmp    538c <itoa+0x95>
    533a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    533d:	8b 55 0c             	mov    0xc(%ebp),%edx
    5340:	89 d3                	mov    %edx,%ebx
    5342:	89 c1                	mov    %eax,%ecx
    5344:	d3 fb                	sar    %cl,%ebx
    5346:	89 d8                	mov    %ebx,%eax
    5348:	83 e0 0f             	and    $0xf,%eax
    534b:	88 45 f7             	mov    %al,-0x9(%ebp)
    534e:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    5352:	75 06                	jne    535a <itoa+0x63>
    5354:	80 7d f7 00          	cmpb   $0x0,-0x9(%ebp)
    5358:	7e 2e                	jle    5388 <itoa+0x91>
    535a:	c7 45 ec 01 00 00 00 	movl   $0x1,-0x14(%ebp)
    5361:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    5365:	83 c0 30             	add    $0x30,%eax
    5368:	88 45 f7             	mov    %al,-0x9(%ebp)
    536b:	80 7d f7 39          	cmpb   $0x39,-0x9(%ebp)
    536f:	7e 0a                	jle    537b <itoa+0x84>
    5371:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    5375:	83 c0 07             	add    $0x7,%eax
    5378:	88 45 f7             	mov    %al,-0x9(%ebp)
    537b:	8b 45 f8             	mov    -0x8(%ebp),%eax
    537e:	0f b6 55 f7          	movzbl -0x9(%ebp),%edx
    5382:	88 10                	mov    %dl,(%eax)
    5384:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    5388:	83 6d f0 04          	subl   $0x4,-0x10(%ebp)
    538c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    5390:	79 a8                	jns    533a <itoa+0x43>
    5392:	8b 45 f8             	mov    -0x8(%ebp),%eax
    5395:	c6 00 00             	movb   $0x0,(%eax)
    5398:	8b 45 08             	mov    0x8(%ebp),%eax
    539b:	83 c4 10             	add    $0x10,%esp
    539e:	5b                   	pop    %ebx
    539f:	5d                   	pop    %ebp
    53a0:	c3                   	ret    

000053a1 <disp_int>:
    53a1:	55                   	push   %ebp
    53a2:	89 e5                	mov    %esp,%ebp
    53a4:	83 ec 28             	sub    $0x28,%esp
    53a7:	8b 45 08             	mov    0x8(%ebp),%eax
    53aa:	89 44 24 04          	mov    %eax,0x4(%esp)
    53ae:	8d 45 e8             	lea    -0x18(%ebp),%eax
    53b1:	89 04 24             	mov    %eax,(%esp)
    53b4:	e8 3e ff ff ff       	call   52f7 <itoa>
    53b9:	8d 45 e8             	lea    -0x18(%ebp),%eax
    53bc:	89 04 24             	mov    %eax,(%esp)
    53bf:	e8 2c fb ff ff       	call   4ef0 <disp_str>
    53c4:	c9                   	leave  
    53c5:	c3                   	ret    

000053c6 <printk>:
    53c6:	55                   	push   %ebp
    53c7:	89 e5                	mov    %esp,%ebp
    53c9:	81 ec 28 04 00 00    	sub    $0x428,%esp
    53cf:	8d 45 08             	lea    0x8(%ebp),%eax
    53d2:	83 c0 04             	add    $0x4,%eax
    53d5:	89 45 f4             	mov    %eax,-0xc(%ebp)
    53d8:	8b 45 08             	mov    0x8(%ebp),%eax
    53db:	8b 55 f4             	mov    -0xc(%ebp),%edx
    53de:	89 54 24 08          	mov    %edx,0x8(%esp)
    53e2:	89 44 24 04          	mov    %eax,0x4(%esp)
    53e6:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    53ec:	89 04 24             	mov    %eax,(%esp)
    53ef:	e8 47 aa 00 00       	call   fe3b <vsprintf>
    53f4:	89 45 f0             	mov    %eax,-0x10(%ebp)
    53f7:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    53fd:	89 04 24             	mov    %eax,(%esp)
    5400:	e8 eb fa ff ff       	call   4ef0 <disp_str>
    5405:	8b 45 f0             	mov    -0x10(%ebp),%eax
    5408:	c9                   	leave  
    5409:	c3                   	ret    

0000540a <delay>:
    540a:	55                   	push   %ebp
    540b:	89 e5                	mov    %esp,%ebp
    540d:	83 ec 10             	sub    $0x10,%esp
    5410:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    5417:	eb 2d                	jmp    5446 <delay+0x3c>
    5419:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
    5420:	eb 1a                	jmp    543c <delay+0x32>
    5422:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
    5429:	eb 04                	jmp    542f <delay+0x25>
    542b:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    542f:	81 7d f8 0f 27 00 00 	cmpl   $0x270f,-0x8(%ebp)
    5436:	7e f3                	jle    542b <delay+0x21>
    5438:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
    543c:	83 7d fc 09          	cmpl   $0x9,-0x4(%ebp)
    5440:	7e e0                	jle    5422 <delay+0x18>
    5442:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    5446:	8b 45 f4             	mov    -0xc(%ebp),%eax
    5449:	3b 45 08             	cmp    0x8(%ebp),%eax
    544c:	7c cb                	jl     5419 <delay+0xf>
    544e:	c9                   	leave  
    544f:	c3                   	ret    

00005450 <sys_reboot>:
    5450:	55                   	push   %ebp
    5451:	89 e5                	mov    %esp,%ebp
    5453:	83 ec 08             	sub    $0x8,%esp
    5456:	e8 19 01 00 00       	call   5574 <hard_reboot>
    545b:	b8 00 00 00 00       	mov    $0x0,%eax
    5460:	c9                   	leave  
    5461:	c3                   	ret    

00005462 <do_ftime>:
    5462:	55                   	push   %ebp
    5463:	89 e5                	mov    %esp,%ebp
    5465:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    546a:	5d                   	pop    %ebp
    546b:	c3                   	ret    

0000546c <do_mknod>:
    546c:	55                   	push   %ebp
    546d:	89 e5                	mov    %esp,%ebp
    546f:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5474:	5d                   	pop    %ebp
    5475:	c3                   	ret    

00005476 <do_break>:
    5476:	55                   	push   %ebp
    5477:	89 e5                	mov    %esp,%ebp
    5479:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    547e:	5d                   	pop    %ebp
    547f:	c3                   	ret    

00005480 <do_ustat>:
    5480:	55                   	push   %ebp
    5481:	89 e5                	mov    %esp,%ebp
    5483:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5488:	5d                   	pop    %ebp
    5489:	c3                   	ret    

0000548a <do_ptrace>:
    548a:	55                   	push   %ebp
    548b:	89 e5                	mov    %esp,%ebp
    548d:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5492:	5d                   	pop    %ebp
    5493:	c3                   	ret    

00005494 <do_stty>:
    5494:	55                   	push   %ebp
    5495:	89 e5                	mov    %esp,%ebp
    5497:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    549c:	5d                   	pop    %ebp
    549d:	c3                   	ret    

0000549e <do_gtty>:
    549e:	55                   	push   %ebp
    549f:	89 e5                	mov    %esp,%ebp
    54a1:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54a6:	5d                   	pop    %ebp
    54a7:	c3                   	ret    

000054a8 <do_rename>:
    54a8:	55                   	push   %ebp
    54a9:	89 e5                	mov    %esp,%ebp
    54ab:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54b0:	5d                   	pop    %ebp
    54b1:	c3                   	ret    

000054b2 <do_prof>:
    54b2:	55                   	push   %ebp
    54b3:	89 e5                	mov    %esp,%ebp
    54b5:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54ba:	5d                   	pop    %ebp
    54bb:	c3                   	ret    

000054bc <do_acct>:
    54bc:	55                   	push   %ebp
    54bd:	89 e5                	mov    %esp,%ebp
    54bf:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54c4:	5d                   	pop    %ebp
    54c5:	c3                   	ret    

000054c6 <do_phys>:
    54c6:	55                   	push   %ebp
    54c7:	89 e5                	mov    %esp,%ebp
    54c9:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54ce:	5d                   	pop    %ebp
    54cf:	c3                   	ret    

000054d0 <do_lock>:
    54d0:	55                   	push   %ebp
    54d1:	89 e5                	mov    %esp,%ebp
    54d3:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54d8:	5d                   	pop    %ebp
    54d9:	c3                   	ret    

000054da <do_mpx>:
    54da:	55                   	push   %ebp
    54db:	89 e5                	mov    %esp,%ebp
    54dd:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54e2:	5d                   	pop    %ebp
    54e3:	c3                   	ret    

000054e4 <do_ulimit>:
    54e4:	55                   	push   %ebp
    54e5:	89 e5                	mov    %esp,%ebp
    54e7:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54ec:	5d                   	pop    %ebp
    54ed:	c3                   	ret    

000054ee <do_stime>:
    54ee:	55                   	push   %ebp
    54ef:	89 e5                	mov    %esp,%ebp
    54f1:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    54f6:	5d                   	pop    %ebp
    54f7:	c3                   	ret    

000054f8 <do_times>:
    54f8:	55                   	push   %ebp
    54f9:	89 e5                	mov    %esp,%ebp
    54fb:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5500:	5d                   	pop    %ebp
    5501:	c3                   	ret    

00005502 <do_brk>:
    5502:	55                   	push   %ebp
    5503:	89 e5                	mov    %esp,%ebp
    5505:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    550a:	5d                   	pop    %ebp
    550b:	c3                   	ret    

0000550c <do_setpgid>:
    550c:	55                   	push   %ebp
    550d:	89 e5                	mov    %esp,%ebp
    550f:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5514:	5d                   	pop    %ebp
    5515:	c3                   	ret    

00005516 <do_getpgrp>:
    5516:	55                   	push   %ebp
    5517:	89 e5                	mov    %esp,%ebp
    5519:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    551e:	5d                   	pop    %ebp
    551f:	c3                   	ret    

00005520 <do_setsid>:
    5520:	55                   	push   %ebp
    5521:	89 e5                	mov    %esp,%ebp
    5523:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5528:	5d                   	pop    %ebp
    5529:	c3                   	ret    

0000552a <do_uname>:
    552a:	55                   	push   %ebp
    552b:	89 e5                	mov    %esp,%ebp
    552d:	83 ec 18             	sub    $0x18,%esp
    5530:	8b 45 0c             	mov    0xc(%ebp),%eax
    5533:	89 44 24 04          	mov    %eax,0x4(%esp)
    5537:	8b 45 08             	mov    0x8(%ebp),%eax
    553a:	89 04 24             	mov    %eax,(%esp)
    553d:	e8 93 df ff ff       	call   34d5 <va2la>
    5542:	c7 44 24 08 2d 00 00 	movl   $0x2d,0x8(%esp)
    5549:	00 
    554a:	c7 44 24 04 a0 32 01 	movl   $0x132a0,0x4(%esp)
    5551:	00 
    5552:	89 04 24             	mov    %eax,(%esp)
    5555:	e8 96 ab 00 00       	call   100f0 <memcpy>
    555a:	b8 00 00 00 00       	mov    $0x0,%eax
    555f:	c9                   	leave  
    5560:	c3                   	ret    

00005561 <do_umask>:
    5561:	55                   	push   %ebp
    5562:	89 e5                	mov    %esp,%ebp
    5564:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    5569:	5d                   	pop    %ebp
    556a:	c3                   	ret    
    556b:	90                   	nop
    556c:	90                   	nop
    556d:	90                   	nop
    556e:	90                   	nop
    556f:	90                   	nop

00005570 <no_idt>:
    5570:	00 00                	add    %al,(%eax)
	...

00005574 <hard_reboot>:
    5574:	fb                   	sti    
    5575:	bb 64 00 00 00       	mov    $0x64,%ebx
    557a:	b0 fe                	mov    $0xfe,%al
    557c:	e6 64                	out    %al,$0x64
    557e:	90                   	nop
    557f:	90                   	nop

00005580 <task_fs>:
    5580:	55                   	push   %ebp
    5581:	89 e5                	mov    %esp,%ebp
    5583:	53                   	push   %ebx
    5584:	81 ec 24 02 00 00    	sub    $0x224,%esp
    558a:	e8 6d 02 00 00       	call   57fc <init_fs>
    558f:	e8 c8 56 00 00       	call   ac5c <init_buffer>
    5594:	eb 01                	jmp    5597 <task_fs+0x17>
    5596:	90                   	nop
    5597:	c7 44 24 08 20 e8 04 	movl   $0x4e820,0x8(%esp)
    559e:	00 
    559f:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    55a6:	00 
    55a7:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    55ae:	e8 c5 ab 00 00       	call   10178 <send_recv>
    55b3:	a1 24 e8 04 00       	mov    0x4e824,%eax
    55b8:	89 45 f0             	mov    %eax,-0x10(%ebp)
    55bb:	a1 20 e8 04 00       	mov    0x4e820,%eax
    55c0:	89 45 f4             	mov    %eax,-0xc(%ebp)
    55c3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    55c6:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    55cc:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    55d1:	a3 a4 da 04 00       	mov    %eax,0x4daa4
    55d6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    55d9:	83 e8 0f             	sub    $0xf,%eax
    55dc:	83 f8 1d             	cmp    $0x1d,%eax
    55df:	0f 87 c7 00 00 00    	ja     56ac <task_fs+0x12c>
    55e5:	8b 04 85 c0 12 01 00 	mov    0x112c0(,%eax,4),%eax
    55ec:	ff e0                	jmp    *%eax
    55ee:	e8 3d 14 00 00       	call   6a30 <do_open>
    55f3:	a3 28 e8 04 00       	mov    %eax,0x4e828
    55f8:	e9 e8 00 00 00       	jmp    56e5 <task_fs+0x165>
    55fd:	e8 b4 1a 00 00       	call   70b6 <do_close>
    5602:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5607:	e9 d9 00 00 00       	jmp    56e5 <task_fs+0x165>
    560c:	e8 67 24 00 00       	call   7a78 <do_rdwt>
    5611:	a3 2c e8 04 00       	mov    %eax,0x4e82c
    5616:	e9 ca 00 00 00       	jmp    56e5 <task_fs+0x165>
    561b:	e8 ac 29 00 00       	call   7fcc <do_unlink>
    5620:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5625:	e9 bb 00 00 00       	jmp    56e5 <task_fs+0x165>
    562a:	e8 45 22 00 00       	call   7874 <do_mount>
    562f:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5634:	e9 ac 00 00 00       	jmp    56e5 <task_fs+0x165>
    5639:	e8 40 22 00 00       	call   787e <do_umount>
    563e:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5643:	e9 9d 00 00 00       	jmp    56e5 <task_fs+0x165>
    5648:	e8 e2 19 00 00       	call   702f <do_mkdir>
    564d:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5652:	e9 8e 00 00 00       	jmp    56e5 <task_fs+0x165>
    5657:	a1 30 e8 04 00       	mov    0x4e830,%eax
    565c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    565f:	e9 81 00 00 00       	jmp    56e5 <task_fs+0x165>
    5664:	e8 97 12 00 00       	call   6900 <fs_fork>
    5669:	a3 28 e8 04 00       	mov    %eax,0x4e828
    566e:	eb 75                	jmp    56e5 <task_fs+0x165>
    5670:	e8 07 13 00 00       	call   697c <fs_exit>
    5675:	a3 28 e8 04 00       	mov    %eax,0x4e828
    567a:	eb 69                	jmp    56e5 <task_fs+0x165>
    567c:	e8 b8 1a 00 00       	call   7139 <do_lseek>
    5681:	a3 2c e8 04 00       	mov    %eax,0x4e82c
    5686:	eb 5d                	jmp    56e5 <task_fs+0x165>
    5688:	e8 fb 21 00 00       	call   7888 <do_stat>
    568d:	a3 28 e8 04 00       	mov    %eax,0x4e828
    5692:	eb 51                	jmp    56e5 <task_fs+0x165>
    5694:	e8 de 1b 00 00       	call   7277 <do_chroot>
    5699:	a3 28 e8 04 00       	mov    %eax,0x4e828
    569e:	eb 45                	jmp    56e5 <task_fs+0x165>
    56a0:	e8 4e 1b 00 00       	call   71f3 <do_chdir>
    56a5:	a3 28 e8 04 00       	mov    %eax,0x4e828
    56aa:	eb 39                	jmp    56e5 <task_fs+0x165>
    56ac:	c7 44 24 04 20 e8 04 	movl   $0x4e820,0x4(%esp)
    56b3:	00 
    56b4:	c7 04 24 50 12 01 00 	movl   $0x11250,(%esp)
    56bb:	e8 c7 f3 ff ff       	call   4a87 <dump_msg>
    56c0:	c7 44 24 0c 66 00 00 	movl   $0x66,0xc(%esp)
    56c7:	00 
    56c8:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    56cf:	00 
    56d0:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    56d7:	00 
    56d8:	c7 04 24 6c 12 01 00 	movl   $0x1126c,(%esp)
    56df:	e8 e6 ac 00 00       	call   103ca <assertion_failure>
    56e4:	90                   	nop
    56e5:	c7 85 2c fe ff ff 6e 	movl   $0x1126e,-0x1d4(%ebp)
    56ec:	12 01 00 
    56ef:	c7 85 30 fe ff ff 73 	movl   $0x11273,-0x1d0(%ebp)
    56f6:	12 01 00 
    56f9:	c7 85 34 fe ff ff 79 	movl   $0x11279,-0x1cc(%ebp)
    5700:	12 01 00 
    5703:	c7 85 38 fe ff ff 7e 	movl   $0x1127e,-0x1c8(%ebp)
    570a:	12 01 00 
    570d:	c7 85 3c fe ff ff 84 	movl   $0x11284,-0x1c4(%ebp)
    5714:	12 01 00 
    5717:	c7 85 44 fe ff ff 8a 	movl   $0x1128a,-0x1bc(%ebp)
    571e:	12 01 00 
    5721:	c7 85 48 fe ff ff 91 	movl   $0x11291,-0x1b8(%ebp)
    5728:	12 01 00 
    572b:	c7 85 4c fe ff ff 97 	movl   $0x11297,-0x1b4(%ebp)
    5732:	12 01 00 
    5735:	c7 85 50 fe ff ff 9e 	movl   $0x1129e,-0x1b0(%ebp)
    573c:	12 01 00 
    573f:	c7 85 9c fe ff ff a4 	movl   $0x112a4,-0x164(%ebp)
    5746:	12 01 00 
    5749:	c7 85 a0 fe ff ff a9 	movl   $0x112a9,-0x160(%ebp)
    5750:	12 01 00 
    5753:	c7 85 40 fe ff ff ae 	movl   $0x112ae,-0x1c0(%ebp)
    575a:	12 01 00 
    575d:	c7 85 54 fe ff ff b3 	movl   $0x112b3,-0x1ac(%ebp)
    5764:	12 01 00 
    5767:	c7 85 58 fe ff ff ba 	movl   $0x112ba,-0x1a8(%ebp)
    576e:	12 01 00 
    5771:	8b 45 f0             	mov    -0x10(%ebp),%eax
    5774:	83 e8 0f             	sub    $0xf,%eax
    5777:	83 f8 1d             	cmp    $0x1d,%eax
    577a:	77 1e                	ja     579a <task_fs+0x21a>
    577c:	ba 0c 00 f0 fb       	mov    $0xfbf0000c,%edx
    5781:	89 c1                	mov    %eax,%ecx
    5783:	d3 e2                	shl    %cl,%edx
    5785:	85 d2                	test   %edx,%edx
    5787:	78 37                	js     57c0 <task_fs+0x240>
    5789:	ba 00 00 04 00       	mov    $0x40000,%edx
    578e:	89 d3                	mov    %edx,%ebx
    5790:	89 c1                	mov    %eax,%ecx
    5792:	d3 e3                	shl    %cl,%ebx
    5794:	89 d8                	mov    %ebx,%eax
    5796:	85 c0                	test   %eax,%eax
    5798:	78 29                	js     57c3 <task_fs+0x243>
    579a:	c7 44 24 0c 90 00 00 	movl   $0x90,0xc(%esp)
    57a1:	00 
    57a2:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    57a9:	00 
    57aa:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    57b1:	00 
    57b2:	c7 04 24 6c 12 01 00 	movl   $0x1126c,(%esp)
    57b9:	e8 0c ac 00 00       	call   103ca <assertion_failure>
    57be:	eb 04                	jmp    57c4 <task_fs+0x244>
    57c0:	90                   	nop
    57c1:	eb 01                	jmp    57c4 <task_fs+0x244>
    57c3:	90                   	nop
    57c4:	a1 24 e8 04 00       	mov    0x4e824,%eax
    57c9:	83 f8 1b             	cmp    $0x1b,%eax
    57cc:	0f 84 c4 fd ff ff    	je     5596 <task_fs+0x16>
    57d2:	c7 05 24 e8 04 00 2d 	movl   $0x2d,0x4e824
    57d9:	00 00 00 
    57dc:	c7 44 24 08 20 e8 04 	movl   $0x4e820,0x8(%esp)
    57e3:	00 
    57e4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    57e7:	89 44 24 04          	mov    %eax,0x4(%esp)
    57eb:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    57f2:	e8 81 a9 00 00       	call   10178 <send_recv>
    57f7:	e9 9b fd ff ff       	jmp    5597 <task_fs+0x17>

000057fc <init_fs>:
    57fc:	55                   	push   %ebp
    57fd:	89 e5                	mov    %esp,%ebp
    57ff:	83 ec 28             	sub    $0x28,%esp
    5802:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    5809:	eb 2e                	jmp    5839 <init_fs+0x3d>
    580b:	8b 55 f4             	mov    -0xc(%ebp),%edx
    580e:	89 d0                	mov    %edx,%eax
    5810:	c1 e0 02             	shl    $0x2,%eax
    5813:	01 d0                	add    %edx,%eax
    5815:	c1 e0 02             	shl    $0x2,%eax
    5818:	05 60 e8 04 00       	add    $0x4e860,%eax
    581d:	c7 44 24 08 14 00 00 	movl   $0x14,0x8(%esp)
    5824:	00 
    5825:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    582c:	00 
    582d:	89 04 24             	mov    %eax,(%esp)
    5830:	e8 ea a8 00 00       	call   1011f <memset>
    5835:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    5839:	83 7d f4 3f          	cmpl   $0x3f,-0xc(%ebp)
    583d:	7e cc                	jle    580b <init_fs+0xf>
    583f:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    5846:	eb 27                	jmp    586f <init_fs+0x73>
    5848:	8b 45 f4             	mov    -0xc(%ebp),%eax
    584b:	6b c0 2c             	imul   $0x2c,%eax,%eax
    584e:	05 80 4b 01 00       	add    $0x14b80,%eax
    5853:	c7 44 24 08 2c 00 00 	movl   $0x2c,0x8(%esp)
    585a:	00 
    585b:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    5862:	00 
    5863:	89 04 24             	mov    %eax,(%esp)
    5866:	e8 b4 a8 00 00       	call   1011f <memset>
    586b:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    586f:	83 7d f4 3f          	cmpl   $0x3f,-0xc(%ebp)
    5873:	7e d3                	jle    5848 <init_fs+0x4c>
    5875:	c7 45 f0 00 0a 05 00 	movl   $0x50a00,-0x10(%ebp)
    587c:	eb 0e                	jmp    588c <init_fs+0x90>
    587e:	8b 45 f0             	mov    -0x10(%ebp),%eax
    5881:	c7 40 38 00 00 00 00 	movl   $0x0,0x38(%eax)
    5888:	83 45 f0 3c          	addl   $0x3c,-0x10(%ebp)
    588c:	b8 e0 0b 05 00       	mov    $0x50be0,%eax
    5891:	39 45 f0             	cmp    %eax,-0x10(%ebp)
    5894:	72 e8                	jb     587e <init_fs+0x82>
    5896:	e8 02 00 00 00       	call   589d <mount_root>
    589b:	c9                   	leave  
    589c:	c3                   	ret    

0000589d <mount_root>:
    589d:	55                   	push   %ebp
    589e:	89 e5                	mov    %esp,%ebp
    58a0:	83 ec 58             	sub    $0x58,%esp
    58a3:	c7 45 c4 d1 07 00 00 	movl   $0x7d1,-0x3c(%ebp)
    58aa:	a1 20 30 01 00       	mov    0x13020,%eax
    58af:	25 ff 00 00 00       	and    $0xff,%eax
    58b4:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    58b7:	a1 20 30 01 00       	mov    0x13020,%eax
    58bc:	c1 f8 08             	sar    $0x8,%eax
    58bf:	25 ff 00 00 00       	and    $0xff,%eax
    58c4:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    58cb:	83 f8 ec             	cmp    $0xffffffec,%eax
    58ce:	75 24                	jne    58f4 <mount_root+0x57>
    58d0:	c7 44 24 0c bc 00 00 	movl   $0xbc,0xc(%esp)
    58d7:	00 
    58d8:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    58df:	00 
    58e0:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    58e7:	00 
    58e8:	c7 04 24 38 13 01 00 	movl   $0x11338,(%esp)
    58ef:	e8 d6 aa 00 00       	call   103ca <assertion_failure>
    58f4:	a1 20 30 01 00       	mov    0x13020,%eax
    58f9:	c1 f8 08             	sar    $0x8,%eax
    58fc:	25 ff 00 00 00       	and    $0xff,%eax
    5901:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    5908:	8d 55 c0             	lea    -0x40(%ebp),%edx
    590b:	89 54 24 08          	mov    %edx,0x8(%esp)
    590f:	89 44 24 04          	mov    %eax,0x4(%esp)
    5913:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    591a:	e8 59 a8 00 00       	call   10178 <send_recv>
    591f:	a1 20 30 01 00       	mov    0x13020,%eax
    5924:	c1 f8 08             	sar    $0x8,%eax
    5927:	25 ff 00 00 00       	and    $0xff,%eax
    592c:	83 f8 02             	cmp    $0x2,%eax
    592f:	75 16                	jne    5947 <mount_root+0xaa>
    5931:	c7 04 24 6c 13 01 00 	movl   $0x1136c,(%esp)
    5938:	e8 4d a4 00 00       	call   fd8a <printl>
    593d:	90                   	nop
    593e:	a1 b0 ed 04 00       	mov    0x4edb0,%eax
    5943:	85 c0                	test   %eax,%eax
    5945:	74 f7                	je     593e <mount_root+0xa1>
    5947:	c7 04 24 90 13 01 00 	movl   $0x11390,(%esp)
    594e:	e8 37 a4 00 00       	call   fd8a <printl>
    5953:	e8 ce 00 00 00       	call   5a26 <mkfs>
    5958:	a1 20 30 01 00       	mov    0x13020,%eax
    595d:	89 04 24             	mov    %eax,(%esp)
    5960:	e8 f5 0a 00 00       	call   645a <read_super_block>
    5965:	a1 20 30 01 00       	mov    0x13020,%eax
    596a:	89 04 24             	mov    %eax,(%esp)
    596d:	e8 5b 0c 00 00       	call   65cd <get_super_block>
    5972:	89 45 f0             	mov    %eax,-0x10(%ebp)
    5975:	8b 45 f0             	mov    -0x10(%ebp),%eax
    5978:	8b 00                	mov    (%eax),%eax
    597a:	3d 11 01 00 00       	cmp    $0x111,%eax
    597f:	74 24                	je     59a5 <mount_root+0x108>
    5981:	c7 44 24 0c d1 00 00 	movl   $0xd1,0xc(%esp)
    5988:	00 
    5989:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    5990:	00 
    5991:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    5998:	00 
    5999:	c7 04 24 a7 13 01 00 	movl   $0x113a7,(%esp)
    59a0:	e8 25 aa 00 00       	call   103ca <assertion_failure>
    59a5:	a1 20 30 01 00       	mov    0x13020,%eax
    59aa:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    59b1:	00 
    59b2:	89 04 24             	mov    %eax,(%esp)
    59b5:	e8 5a 0c 00 00       	call   6614 <get_inode>
    59ba:	a3 60 ed 04 00       	mov    %eax,0x4ed60
    59bf:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    59c6:	eb 32                	jmp    59fa <mount_root+0x15d>
    59c8:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    59cd:	8b 55 f4             	mov    -0xc(%ebp),%edx
    59d0:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    59d6:	81 c2 e0 0e 05 00    	add    $0x50ee0,%edx
    59dc:	89 42 0e             	mov    %eax,0xe(%edx)
    59df:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    59e4:	8b 55 f4             	mov    -0xc(%ebp),%edx
    59e7:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    59ed:	81 c2 e0 0e 05 00    	add    $0x50ee0,%edx
    59f3:	89 42 0a             	mov    %eax,0xa(%edx)
    59f6:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    59fa:	83 7d f4 0a          	cmpl   $0xa,-0xc(%ebp)
    59fe:	7e c8                	jle    59c8 <mount_root+0x12b>
    5a00:	c7 04 24 c0 13 01 00 	movl   $0x113c0,(%esp)
    5a07:	e8 7e a3 00 00       	call   fd8a <printl>
    5a0c:	a1 20 30 01 00       	mov    0x13020,%eax
    5a11:	0f b7 c0             	movzwl %ax,%eax
    5a14:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    5a1b:	00 
    5a1c:	89 04 24             	mov    %eax,(%esp)
    5a1f:	e8 c1 7d 00 00       	call   d7e5 <rd_load_image>
    5a24:	c9                   	leave  
    5a25:	c3                   	ret    

00005a26 <mkfs>:
    5a26:	55                   	push   %ebp
    5a27:	89 e5                	mov    %esp,%ebp
    5a29:	57                   	push   %edi
    5a2a:	56                   	push   %esi
    5a2b:	53                   	push   %ebx
    5a2c:	81 ec 1c 01 00 00    	sub    $0x11c,%esp
    5a32:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5a38:	a1 20 30 01 00       	mov    0x13020,%eax
    5a3d:	89 54 24 18          	mov    %edx,0x18(%esp)
    5a41:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5a48:	00 
    5a49:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5a50:	00 
    5a51:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5a58:	00 
    5a59:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    5a60:	00 
    5a61:	89 44 24 04          	mov    %eax,0x4(%esp)
    5a65:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    5a6c:	e8 3d 09 00 00       	call   63ae <rw_sector>
    5a71:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5a76:	89 45 cc             	mov    %eax,-0x34(%ebp)
    5a79:	8b 45 cc             	mov    -0x34(%ebp),%eax
    5a7c:	8b 00                	mov    (%eax),%eax
    5a7e:	3d 11 01 00 00       	cmp    $0x111,%eax
    5a83:	75 11                	jne    5a96 <mkfs+0x70>
    5a85:	c7 04 24 e4 13 01 00 	movl   $0x113e4,(%esp)
    5a8c:	e8 f9 a2 00 00       	call   fd8a <printl>
    5a91:	e9 0d 09 00 00       	jmp    63a3 <mkfs+0x97d>
    5a96:	c7 45 8c d5 07 00 00 	movl   $0x7d5,-0x74(%ebp)
    5a9d:	a1 20 30 01 00       	mov    0x13020,%eax
    5aa2:	25 ff 00 00 00       	and    $0xff,%eax
    5aa7:	89 45 9c             	mov    %eax,-0x64(%ebp)
    5aaa:	c7 45 94 01 00 00 00 	movl   $0x1,-0x6c(%ebp)
    5ab1:	8d 45 80             	lea    -0x80(%ebp),%eax
    5ab4:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    5ab7:	c7 45 98 03 00 00 00 	movl   $0x3,-0x68(%ebp)
    5abe:	a1 20 30 01 00       	mov    0x13020,%eax
    5ac3:	c1 f8 08             	sar    $0x8,%eax
    5ac6:	25 ff 00 00 00       	and    $0xff,%eax
    5acb:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    5ad2:	83 f8 ec             	cmp    $0xffffffec,%eax
    5ad5:	75 24                	jne    5afb <mkfs+0xd5>
    5ad7:	c7 44 24 0c 03 01 00 	movl   $0x103,0xc(%esp)
    5ade:	00 
    5adf:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    5ae6:	00 
    5ae7:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    5aee:	00 
    5aef:	c7 04 24 38 13 01 00 	movl   $0x11338,(%esp)
    5af6:	e8 cf a8 00 00       	call   103ca <assertion_failure>
    5afb:	a1 20 30 01 00       	mov    0x13020,%eax
    5b00:	c1 f8 08             	sar    $0x8,%eax
    5b03:	25 ff 00 00 00       	and    $0xff,%eax
    5b08:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    5b0f:	8d 55 88             	lea    -0x78(%ebp),%edx
    5b12:	89 54 24 08          	mov    %edx,0x8(%esp)
    5b16:	89 44 24 04          	mov    %eax,0x4(%esp)
    5b1a:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    5b21:	e8 52 a6 00 00       	call   10178 <send_recv>
    5b26:	c7 45 c8 00 10 00 00 	movl   $0x1000,-0x38(%ebp)
    5b2d:	c7 85 44 ff ff ff 11 	movl   $0x111,-0xbc(%ebp)
    5b34:	01 00 00 
    5b37:	8b 45 c8             	mov    -0x38(%ebp),%eax
    5b3a:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
    5b40:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
    5b46:	c1 e0 05             	shl    $0x5,%eax
    5b49:	c1 e8 09             	shr    $0x9,%eax
    5b4c:	89 85 5c ff ff ff    	mov    %eax,-0xa4(%ebp)
    5b52:	8b 45 84             	mov    -0x7c(%ebp),%eax
    5b55:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
    5b5b:	c7 85 50 ff ff ff 01 	movl   $0x1,-0xb0(%ebp)
    5b62:	00 00 00 
    5b65:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
    5b6b:	8b 55 c8             	mov    -0x38(%ebp),%edx
    5b6e:	89 95 04 ff ff ff    	mov    %edx,-0xfc(%ebp)
    5b74:	ba 00 00 00 00       	mov    $0x0,%edx
    5b79:	f7 b5 04 ff ff ff    	divl   -0xfc(%ebp)
    5b7f:	83 c0 01             	add    $0x1,%eax
    5b82:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
    5b88:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    5b8e:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
    5b94:	01 c2                	add    %eax,%edx
    5b96:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
    5b9c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5b9f:	83 c0 02             	add    $0x2,%eax
    5ba2:	89 85 58 ff ff ff    	mov    %eax,-0xa8(%ebp)
    5ba8:	c7 85 60 ff ff ff 01 	movl   $0x1,-0xa0(%ebp)
    5baf:	00 00 00 
    5bb2:	c7 85 64 ff ff ff 20 	movl   $0x20,-0x9c(%ebp)
    5bb9:	00 00 00 
    5bbc:	c7 85 68 ff ff ff 04 	movl   $0x4,-0x98(%ebp)
    5bc3:	00 00 00 
    5bc6:	c7 85 6c ff ff ff 08 	movl   $0x8,-0x94(%ebp)
    5bcd:	00 00 00 
    5bd0:	c7 85 70 ff ff ff 10 	movl   $0x10,-0x90(%ebp)
    5bd7:	00 00 00 
    5bda:	c7 85 74 ff ff ff 00 	movl   $0x0,-0x8c(%ebp)
    5be1:	00 00 00 
    5be4:	c7 85 78 ff ff ff 04 	movl   $0x4,-0x88(%ebp)
    5beb:	00 00 00 
    5bee:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5bf3:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5bfa:	00 
    5bfb:	c7 44 24 04 90 ff ff 	movl   $0xffffff90,0x4(%esp)
    5c02:	ff 
    5c03:	89 04 24             	mov    %eax,(%esp)
    5c06:	e8 14 a5 00 00       	call   1011f <memset>
    5c0b:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5c10:	c7 44 24 08 38 00 00 	movl   $0x38,0x8(%esp)
    5c17:	00 
    5c18:	8d 95 44 ff ff ff    	lea    -0xbc(%ebp),%edx
    5c1e:	89 54 24 04          	mov    %edx,0x4(%esp)
    5c22:	89 04 24             	mov    %eax,(%esp)
    5c25:	e8 c6 a4 00 00       	call   100f0 <memcpy>
    5c2a:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5c30:	a1 20 30 01 00       	mov    0x13020,%eax
    5c35:	89 54 24 18          	mov    %edx,0x18(%esp)
    5c39:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5c40:	00 
    5c41:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5c48:	00 
    5c49:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5c50:	00 
    5c51:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    5c58:	00 
    5c59:	89 44 24 04          	mov    %eax,0x4(%esp)
    5c5d:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    5c64:	e8 45 07 00 00       	call   63ae <rw_sector>
    5c69:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5c6e:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5c75:	00 
    5c76:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    5c7d:	00 
    5c7e:	89 04 24             	mov    %eax,(%esp)
    5c81:	e8 99 a4 00 00       	call   1011f <memset>
    5c86:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    5c8d:	eb 28                	jmp    5cb7 <mkfs+0x291>
    5c8f:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5c94:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5c9a:	0f b6 12             	movzbl (%edx),%edx
    5c9d:	89 d3                	mov    %edx,%ebx
    5c9f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    5ca2:	be 01 00 00 00       	mov    $0x1,%esi
    5ca7:	89 f7                	mov    %esi,%edi
    5ca9:	89 d1                	mov    %edx,%ecx
    5cab:	d3 e7                	shl    %cl,%edi
    5cad:	89 fa                	mov    %edi,%edx
    5caf:	09 da                	or     %ebx,%edx
    5cb1:	88 10                	mov    %dl,(%eax)
    5cb3:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    5cb7:	83 7d e4 06          	cmpl   $0x6,-0x1c(%ebp)
    5cbb:	7e d2                	jle    5c8f <mkfs+0x269>
    5cbd:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5cc2:	0f b6 00             	movzbl (%eax),%eax
    5cc5:	3c 7f                	cmp    $0x7f,%al
    5cc7:	74 24                	je     5ced <mkfs+0x2c7>
    5cc9:	c7 44 24 0c 33 01 00 	movl   $0x133,0xc(%esp)
    5cd0:	00 
    5cd1:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    5cd8:	00 
    5cd9:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    5ce0:	00 
    5ce1:	c7 04 24 0c 14 01 00 	movl   $0x1140c,(%esp)
    5ce8:	e8 dd a6 00 00       	call   103ca <assertion_failure>
    5ced:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5cf3:	a1 20 30 01 00       	mov    0x13020,%eax
    5cf8:	89 54 24 18          	mov    %edx,0x18(%esp)
    5cfc:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5d03:	00 
    5d04:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5d0b:	00 
    5d0c:	c7 44 24 08 00 04 00 	movl   $0x400,0x8(%esp)
    5d13:	00 
    5d14:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    5d1b:	00 
    5d1c:	89 44 24 04          	mov    %eax,0x4(%esp)
    5d20:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    5d27:	e8 82 06 00 00       	call   63ae <rw_sector>
    5d2c:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5d31:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5d38:	00 
    5d39:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    5d40:	00 
    5d41:	89 04 24             	mov    %eax,(%esp)
    5d44:	e8 d6 a3 00 00       	call   1011f <memset>
    5d49:	c7 45 c4 01 08 00 00 	movl   $0x801,-0x3c(%ebp)
    5d50:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    5d57:	eb 13                	jmp    5d6c <mkfs+0x346>
    5d59:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5d5f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    5d62:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5d65:	c6 00 ff             	movb   $0xff,(%eax)
    5d68:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    5d6c:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    5d6f:	8d 50 07             	lea    0x7(%eax),%edx
    5d72:	85 c0                	test   %eax,%eax
    5d74:	0f 48 c2             	cmovs  %edx,%eax
    5d77:	c1 f8 03             	sar    $0x3,%eax
    5d7a:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
    5d7d:	7f da                	jg     5d59 <mkfs+0x333>
    5d7f:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    5d86:	eb 34                	jmp    5dbc <mkfs+0x396>
    5d88:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5d8e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    5d91:	01 c2                	add    %eax,%edx
    5d93:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    5d99:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    5d9c:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    5d9f:	0f b6 00             	movzbl (%eax),%eax
    5da2:	89 c3                	mov    %eax,%ebx
    5da4:	8b 45 e0             	mov    -0x20(%ebp),%eax
    5da7:	be 01 00 00 00       	mov    $0x1,%esi
    5dac:	89 f7                	mov    %esi,%edi
    5dae:	89 c1                	mov    %eax,%ecx
    5db0:	d3 e7                	shl    %cl,%edi
    5db2:	89 f8                	mov    %edi,%eax
    5db4:	09 d8                	or     %ebx,%eax
    5db6:	88 02                	mov    %al,(%edx)
    5db8:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    5dbc:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    5dbf:	89 c2                	mov    %eax,%edx
    5dc1:	c1 fa 1f             	sar    $0x1f,%edx
    5dc4:	c1 ea 1d             	shr    $0x1d,%edx
    5dc7:	01 d0                	add    %edx,%eax
    5dc9:	83 e0 07             	and    $0x7,%eax
    5dcc:	29 d0                	sub    %edx,%eax
    5dce:	3b 45 e0             	cmp    -0x20(%ebp),%eax
    5dd1:	7f b5                	jg     5d88 <mkfs+0x362>
    5dd3:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    5dd9:	8b 85 50 ff ff ff    	mov    -0xb0(%ebp),%eax
    5ddf:	83 c0 02             	add    $0x2,%eax
    5de2:	c1 e0 09             	shl    $0x9,%eax
    5de5:	ba 00 00 00 00       	mov    $0x0,%edx
    5dea:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    5df0:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    5df4:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5dfb:	00 
    5dfc:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5e03:	00 
    5e04:	89 44 24 08          	mov    %eax,0x8(%esp)
    5e08:	89 54 24 0c          	mov    %edx,0xc(%esp)
    5e0c:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    5e10:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    5e17:	e8 92 05 00 00       	call   63ae <rw_sector>
    5e1c:	a1 e8 32 01 00       	mov    0x132e8,%eax
    5e21:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    5e28:	00 
    5e29:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    5e30:	00 
    5e31:	89 04 24             	mov    %eax,(%esp)
    5e34:	e8 e6 a2 00 00       	call   1011f <memset>
    5e39:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
    5e40:	eb 53                	jmp    5e95 <mkfs+0x46f>
    5e42:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    5e48:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    5e4e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    5e51:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5e54:	83 c0 02             	add    $0x2,%eax
    5e57:	c1 e0 09             	shl    $0x9,%eax
    5e5a:	ba 00 00 00 00       	mov    $0x0,%edx
    5e5f:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    5e65:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    5e69:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5e70:	00 
    5e71:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5e78:	00 
    5e79:	89 44 24 08          	mov    %eax,0x8(%esp)
    5e7d:	89 54 24 0c          	mov    %edx,0xc(%esp)
    5e81:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    5e85:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    5e8c:	e8 1d 05 00 00       	call   63ae <rw_sector>
    5e91:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    5e95:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    5e98:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
    5e9e:	39 c2                	cmp    %eax,%edx
    5ea0:	72 a0                	jb     5e42 <mkfs+0x41c>
    5ea2:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
    5ea8:	2d 00 08 00 00       	sub    $0x800,%eax
    5ead:	3d 00 88 00 00       	cmp    $0x8800,%eax
    5eb2:	77 24                	ja     5ed8 <mkfs+0x4b2>
    5eb4:	c7 44 24 0c 58 01 00 	movl   $0x158,0xc(%esp)
    5ebb:	00 
    5ebc:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    5ec3:	00 
    5ec4:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    5ecb:	00 
    5ecc:	c7 04 24 20 14 01 00 	movl   $0x11420,(%esp)
    5ed3:	e8 f2 a4 00 00       	call   103ca <assertion_failure>
    5ed8:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
    5ede:	ba 01 80 00 00       	mov    $0x8001,%edx
    5ee3:	89 d1                	mov    %edx,%ecx
    5ee5:	29 c1                	sub    %eax,%ecx
    5ee7:	89 c8                	mov    %ecx,%eax
    5ee9:	89 45 c0             	mov    %eax,-0x40(%ebp)
    5eec:	8b 45 c0             	mov    -0x40(%ebp),%eax
    5eef:	89 c2                	mov    %eax,%edx
    5ef1:	c1 fa 1f             	sar    $0x1f,%edx
    5ef4:	c1 ea 14             	shr    $0x14,%edx
    5ef7:	01 d0                	add    %edx,%eax
    5ef9:	25 ff 0f 00 00       	and    $0xfff,%eax
    5efe:	29 d0                	sub    %edx,%eax
    5f00:	89 45 dc             	mov    %eax,-0x24(%ebp)
    5f03:	c7 45 d8 00 08 00 00 	movl   $0x800,-0x28(%ebp)
    5f0a:	8b 45 c0             	mov    -0x40(%ebp),%eax
    5f0d:	8d 90 ff 0f 00 00    	lea    0xfff(%eax),%edx
    5f13:	85 c0                	test   %eax,%eax
    5f15:	0f 48 c2             	cmovs  %edx,%eax
    5f18:	c1 f8 0c             	sar    $0xc,%eax
    5f1b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    5f1e:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    5f24:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    5f2a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    5f2d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5f30:	83 c0 02             	add    $0x2,%eax
    5f33:	c1 e0 09             	shl    $0x9,%eax
    5f36:	ba 00 00 00 00       	mov    $0x0,%edx
    5f3b:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    5f41:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    5f45:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    5f4c:	00 
    5f4d:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    5f54:	00 
    5f55:	89 44 24 08          	mov    %eax,0x8(%esp)
    5f59:	89 54 24 0c          	mov    %edx,0xc(%esp)
    5f5d:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    5f61:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    5f68:	e8 41 04 00 00       	call   63ae <rw_sector>
    5f6d:	e9 0f 01 00 00       	jmp    6081 <mkfs+0x65b>
    5f72:	8b 45 dc             	mov    -0x24(%ebp),%eax
    5f75:	8d 50 07             	lea    0x7(%eax),%edx
    5f78:	85 c0                	test   %eax,%eax
    5f7a:	0f 48 c2             	cmovs  %edx,%eax
    5f7d:	c1 f8 03             	sar    $0x3,%eax
    5f80:	89 45 bc             	mov    %eax,-0x44(%ebp)
    5f83:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5f89:	8b 45 bc             	mov    -0x44(%ebp),%eax
    5f8c:	8d 1c 02             	lea    (%edx,%eax,1),%ebx
    5f8f:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    5f95:	8b 45 bc             	mov    -0x44(%ebp),%eax
    5f98:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5f9b:	0f b6 00             	movzbl (%eax),%eax
    5f9e:	89 c6                	mov    %eax,%esi
    5fa0:	8b 45 dc             	mov    -0x24(%ebp),%eax
    5fa3:	89 c2                	mov    %eax,%edx
    5fa5:	c1 fa 1f             	sar    $0x1f,%edx
    5fa8:	c1 ea 1d             	shr    $0x1d,%edx
    5fab:	01 d0                	add    %edx,%eax
    5fad:	83 e0 07             	and    $0x7,%eax
    5fb0:	29 d0                	sub    %edx,%eax
    5fb2:	ba 01 00 00 00       	mov    $0x1,%edx
    5fb7:	89 d7                	mov    %edx,%edi
    5fb9:	89 c1                	mov    %eax,%ecx
    5fbb:	d3 e7                	shl    %cl,%edi
    5fbd:	89 f8                	mov    %edi,%eax
    5fbf:	09 f0                	or     %esi,%eax
    5fc1:	88 03                	mov    %al,(%ebx)
    5fc3:	83 6d d8 01          	subl   $0x1,-0x28(%ebp)
    5fc7:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    5fcb:	81 7d dc 00 10 00 00 	cmpl   $0x1000,-0x24(%ebp)
    5fd2:	0f 85 a9 00 00 00    	jne    6081 <mkfs+0x65b>
    5fd8:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    5fde:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    5fe4:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    5fe7:	8d 04 02             	lea    (%edx,%eax,1),%eax
    5fea:	83 c0 02             	add    $0x2,%eax
    5fed:	c1 e0 09             	shl    $0x9,%eax
    5ff0:	ba 00 00 00 00       	mov    $0x0,%edx
    5ff5:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    5ffb:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    5fff:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    6006:	00 
    6007:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    600e:	00 
    600f:	89 44 24 08          	mov    %eax,0x8(%esp)
    6013:	89 54 24 0c          	mov    %edx,0xc(%esp)
    6017:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    601b:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    6022:	e8 87 03 00 00       	call   63ae <rw_sector>
    6027:	83 45 d4 01          	addl   $0x1,-0x2c(%ebp)
    602b:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    6031:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    6037:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    603a:	8d 04 02             	lea    (%edx,%eax,1),%eax
    603d:	83 c0 02             	add    $0x2,%eax
    6040:	c1 e0 09             	shl    $0x9,%eax
    6043:	ba 00 00 00 00       	mov    $0x0,%edx
    6048:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    604e:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    6052:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    6059:	00 
    605a:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    6061:	00 
    6062:	89 44 24 08          	mov    %eax,0x8(%esp)
    6066:	89 54 24 0c          	mov    %edx,0xc(%esp)
    606a:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    606e:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    6075:	e8 34 03 00 00       	call   63ae <rw_sector>
    607a:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    6081:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
    6085:	0f 85 e7 fe ff ff    	jne    5f72 <mkfs+0x54c>
    608b:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    6091:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    6097:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    609a:	8d 04 02             	lea    (%edx,%eax,1),%eax
    609d:	83 c0 02             	add    $0x2,%eax
    60a0:	c1 e0 09             	shl    $0x9,%eax
    60a3:	ba 00 00 00 00       	mov    $0x0,%edx
    60a8:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    60ae:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    60b2:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    60b9:	00 
    60ba:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    60c1:	00 
    60c2:	89 44 24 08          	mov    %eax,0x8(%esp)
    60c6:	89 54 24 0c          	mov    %edx,0xc(%esp)
    60ca:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    60ce:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    60d5:	e8 d4 02 00 00       	call   63ae <rw_sector>
    60da:	a1 e8 32 01 00       	mov    0x132e8,%eax
    60df:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    60e6:	00 
    60e7:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    60ee:	00 
    60ef:	89 04 24             	mov    %eax,(%esp)
    60f2:	e8 28 a0 00 00       	call   1011f <memset>
    60f7:	a1 e8 32 01 00       	mov    0x132e8,%eax
    60fc:	89 45 b8             	mov    %eax,-0x48(%ebp)
    60ff:	8b 45 b8             	mov    -0x48(%ebp),%eax
    6102:	c7 00 00 40 00 00    	movl   $0x4000,(%eax)
    6108:	8b 45 b8             	mov    -0x48(%ebp),%eax
    610b:	c7 40 04 70 00 00 00 	movl   $0x70,0x4(%eax)
    6112:	8b 95 58 ff ff ff    	mov    -0xa8(%ebp),%edx
    6118:	8b 45 b8             	mov    -0x48(%ebp),%eax
    611b:	89 50 08             	mov    %edx,0x8(%eax)
    611e:	8b 45 b8             	mov    -0x48(%ebp),%eax
    6121:	c7 40 0c 00 08 00 00 	movl   $0x800,0xc(%eax)
    6128:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    612f:	eb 45                	jmp    6176 <mkfs+0x750>
    6131:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6136:	89 c2                	mov    %eax,%edx
    6138:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    613b:	83 c0 01             	add    $0x1,%eax
    613e:	c1 e0 05             	shl    $0x5,%eax
    6141:	8d 04 02             	lea    (%edx,%eax,1),%eax
    6144:	89 45 b8             	mov    %eax,-0x48(%ebp)
    6147:	8b 45 b8             	mov    -0x48(%ebp),%eax
    614a:	c7 00 00 20 00 00    	movl   $0x2000,(%eax)
    6150:	8b 45 b8             	mov    -0x48(%ebp),%eax
    6153:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    615a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    615d:	80 cc 04             	or     $0x4,%ah
    6160:	89 c2                	mov    %eax,%edx
    6162:	8b 45 b8             	mov    -0x48(%ebp),%eax
    6165:	89 50 08             	mov    %edx,0x8(%eax)
    6168:	8b 45 b8             	mov    -0x48(%ebp),%eax
    616b:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    6172:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    6176:	83 7d e4 02          	cmpl   $0x2,-0x1c(%ebp)
    617a:	7e b5                	jle    6131 <mkfs+0x70b>
    617c:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6181:	83 e8 80             	sub    $0xffffff80,%eax
    6184:	89 45 b8             	mov    %eax,-0x48(%ebp)
    6187:	8b 45 b8             	mov    -0x48(%ebp),%eax
    618a:	c7 00 00 80 00 00    	movl   $0x8000,(%eax)
    6190:	8b 45 b8             	mov    -0x48(%ebp),%eax
    6193:	c7 40 04 40 00 00 00 	movl   $0x40,0x4(%eax)
    619a:	8b 45 b8             	mov    -0x48(%ebp),%eax
    619d:	c7 40 08 01 03 00 00 	movl   $0x301,0x8(%eax)
    61a4:	8b 45 b8             	mov    -0x48(%ebp),%eax
    61a7:	c7 40 0c 00 08 00 00 	movl   $0x800,0xc(%eax)
    61ae:	a1 e8 32 01 00       	mov    0x132e8,%eax
    61b3:	05 a0 00 00 00       	add    $0xa0,%eax
    61b8:	89 45 b8             	mov    %eax,-0x48(%ebp)
    61bb:	8b 45 b8             	mov    -0x48(%ebp),%eax
    61be:	c7 00 00 80 00 00    	movl   $0x8000,(%eax)
    61c4:	8b 45 b8             	mov    -0x48(%ebp),%eax
    61c7:	c7 40 04 00 00 10 00 	movl   $0x100000,0x4(%eax)
    61ce:	8b 45 b8             	mov    -0x48(%ebp),%eax
    61d1:	c7 40 08 00 80 00 00 	movl   $0x8000,0x8(%eax)
    61d8:	8b 45 b8             	mov    -0x48(%ebp),%eax
    61db:	c7 40 0c 00 08 00 00 	movl   $0x800,0xc(%eax)
    61e2:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    61e8:	8b 95 50 ff ff ff    	mov    -0xb0(%ebp),%edx
    61ee:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
    61f4:	8d 04 02             	lea    (%edx,%eax,1),%eax
    61f7:	83 c0 02             	add    $0x2,%eax
    61fa:	c1 e0 09             	shl    $0x9,%eax
    61fd:	ba 00 00 00 00       	mov    $0x0,%edx
    6202:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    6208:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    620c:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    6213:	00 
    6214:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    621b:	00 
    621c:	89 44 24 08          	mov    %eax,0x8(%esp)
    6220:	89 54 24 0c          	mov    %edx,0xc(%esp)
    6224:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    6228:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    622f:	e8 7a 01 00 00       	call   63ae <rw_sector>
    6234:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6239:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    6240:	00 
    6241:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    6248:	00 
    6249:	89 04 24             	mov    %eax,(%esp)
    624c:	e8 ce 9e 00 00       	call   1011f <memset>
    6251:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6256:	89 45 d0             	mov    %eax,-0x30(%ebp)
    6259:	8b 45 d0             	mov    -0x30(%ebp),%eax
    625c:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
    6262:	8b 45 d0             	mov    -0x30(%ebp),%eax
    6265:	83 c0 04             	add    $0x4,%eax
    6268:	c7 44 24 04 67 14 01 	movl   $0x11467,0x4(%esp)
    626f:	00 
    6270:	89 04 24             	mov    %eax,(%esp)
    6273:	e8 ce 9e 00 00       	call   10146 <strcpy>
    6278:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    627f:	eb 30                	jmp    62b1 <mkfs+0x88b>
    6281:	83 45 d0 10          	addl   $0x10,-0x30(%ebp)
    6285:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    6288:	8d 50 02             	lea    0x2(%eax),%edx
    628b:	8b 45 d0             	mov    -0x30(%ebp),%eax
    628e:	89 10                	mov    %edx,(%eax)
    6290:	8b 45 d0             	mov    -0x30(%ebp),%eax
    6293:	8d 50 04             	lea    0x4(%eax),%edx
    6296:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    6299:	89 44 24 08          	mov    %eax,0x8(%esp)
    629d:	c7 44 24 04 69 14 01 	movl   $0x11469,0x4(%esp)
    62a4:	00 
    62a5:	89 14 24             	mov    %edx,(%esp)
    62a8:	e8 16 9e 00 00       	call   100c3 <sprintf>
    62ad:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    62b1:	83 7d e4 02          	cmpl   $0x2,-0x1c(%ebp)
    62b5:	7e ca                	jle    6281 <mkfs+0x85b>
    62b7:	83 45 d0 10          	addl   $0x10,-0x30(%ebp)
    62bb:	8b 45 d0             	mov    -0x30(%ebp),%eax
    62be:	c7 00 05 00 00 00    	movl   $0x5,(%eax)
    62c4:	8b 45 d0             	mov    -0x30(%ebp),%eax
    62c7:	8d 50 04             	lea    0x4(%eax),%edx
    62ca:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    62cd:	89 44 24 08          	mov    %eax,0x8(%esp)
    62d1:	c7 44 24 04 73 14 01 	movl   $0x11473,0x4(%esp)
    62d8:	00 
    62d9:	89 14 24             	mov    %edx,(%esp)
    62dc:	e8 e2 9d 00 00       	call   100c3 <sprintf>
    62e1:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    62e7:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
    62ed:	c1 e0 09             	shl    $0x9,%eax
    62f0:	ba 00 00 00 00       	mov    $0x0,%edx
    62f5:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    62fb:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    62ff:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    6306:	00 
    6307:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    630e:	00 
    630f:	89 44 24 08          	mov    %eax,0x8(%esp)
    6313:	89 54 24 0c          	mov    %edx,0xc(%esp)
    6317:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    631b:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    6322:	e8 87 00 00 00       	call   63ae <rw_sector>
    6327:	83 45 d0 10          	addl   $0x10,-0x30(%ebp)
    632b:	8b 45 d0             	mov    -0x30(%ebp),%eax
    632e:	c7 00 06 00 00 00    	movl   $0x6,(%eax)
    6334:	8b 45 d0             	mov    -0x30(%ebp),%eax
    6337:	8d 50 04             	lea    0x4(%eax),%edx
    633a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    633d:	89 44 24 08          	mov    %eax,0x8(%esp)
    6341:	c7 44 24 04 78 14 01 	movl   $0x11478,0x4(%esp)
    6348:	00 
    6349:	89 14 24             	mov    %edx,(%esp)
    634c:	e8 72 9d 00 00       	call   100c3 <sprintf>
    6351:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    6357:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
    635d:	c1 e0 09             	shl    $0x9,%eax
    6360:	ba 00 00 00 00       	mov    $0x0,%edx
    6365:	8b 0d 20 30 01 00    	mov    0x13020,%ecx
    636b:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    636f:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    6376:	00 
    6377:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    637e:	00 
    637f:	89 44 24 08          	mov    %eax,0x8(%esp)
    6383:	89 54 24 0c          	mov    %edx,0xc(%esp)
    6387:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    638b:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    6392:	e8 17 00 00 00       	call   63ae <rw_sector>
    6397:	c7 04 24 80 14 01 00 	movl   $0x11480,(%esp)
    639e:	e8 e7 99 00 00       	call   fd8a <printl>
    63a3:	81 c4 1c 01 00 00    	add    $0x11c,%esp
    63a9:	5b                   	pop    %ebx
    63aa:	5e                   	pop    %esi
    63ab:	5f                   	pop    %edi
    63ac:	5d                   	pop    %ebp
    63ad:	c3                   	ret    

000063ae <rw_sector>:
    63ae:	55                   	push   %ebp
    63af:	89 e5                	mov    %esp,%ebp
    63b1:	83 ec 58             	sub    $0x58,%esp
    63b4:	8b 45 10             	mov    0x10(%ebp),%eax
    63b7:	89 45 c0             	mov    %eax,-0x40(%ebp)
    63ba:	8b 45 14             	mov    0x14(%ebp),%eax
    63bd:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    63c0:	8b 45 08             	mov    0x8(%ebp),%eax
    63c3:	89 45 cc             	mov    %eax,-0x34(%ebp)
    63c6:	8b 45 0c             	mov    0xc(%ebp),%eax
    63c9:	25 ff 00 00 00       	and    $0xff,%eax
    63ce:	89 45 dc             	mov    %eax,-0x24(%ebp)
    63d1:	8b 45 c0             	mov    -0x40(%ebp),%eax
    63d4:	8b 55 c4             	mov    -0x3c(%ebp),%edx
    63d7:	89 45 e0             	mov    %eax,-0x20(%ebp)
    63da:	89 55 e4             	mov    %edx,-0x1c(%ebp)
    63dd:	8b 45 20             	mov    0x20(%ebp),%eax
    63e0:	89 45 f4             	mov    %eax,-0xc(%ebp)
    63e3:	8b 45 18             	mov    0x18(%ebp),%eax
    63e6:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    63e9:	8b 45 1c             	mov    0x1c(%ebp),%eax
    63ec:	89 45 d8             	mov    %eax,-0x28(%ebp)
    63ef:	8b 45 0c             	mov    0xc(%ebp),%eax
    63f2:	c1 f8 08             	sar    $0x8,%eax
    63f5:	25 ff 00 00 00       	and    $0xff,%eax
    63fa:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    6401:	83 f8 ec             	cmp    $0xffffffec,%eax
    6404:	75 24                	jne    642a <rw_sector+0x7c>
    6406:	c7 44 24 0c c4 01 00 	movl   $0x1c4,0xc(%esp)
    640d:	00 
    640e:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    6415:	00 
    6416:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    641d:	00 
    641e:	c7 04 24 88 14 01 00 	movl   $0x11488,(%esp)
    6425:	e8 a0 9f 00 00       	call   103ca <assertion_failure>
    642a:	8b 45 0c             	mov    0xc(%ebp),%eax
    642d:	c1 f8 08             	sar    $0x8,%eax
    6430:	25 ff 00 00 00       	and    $0xff,%eax
    6435:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    643c:	8d 55 c8             	lea    -0x38(%ebp),%edx
    643f:	89 54 24 08          	mov    %edx,0x8(%esp)
    6443:	89 44 24 04          	mov    %eax,0x4(%esp)
    6447:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    644e:	e8 25 9d 00 00       	call   10178 <send_recv>
    6453:	b8 00 00 00 00       	mov    $0x0,%eax
    6458:	c9                   	leave  
    6459:	c3                   	ret    

0000645a <read_super_block>:
    645a:	55                   	push   %ebp
    645b:	89 e5                	mov    %esp,%ebp
    645d:	83 ec 58             	sub    $0x58,%esp
    6460:	c7 45 c4 d3 07 00 00 	movl   $0x7d3,-0x3c(%ebp)
    6467:	8b 45 08             	mov    0x8(%ebp),%eax
    646a:	25 ff 00 00 00       	and    $0xff,%eax
    646f:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    6472:	c7 45 d8 00 02 00 00 	movl   $0x200,-0x28(%ebp)
    6479:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    6480:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6485:	89 45 ec             	mov    %eax,-0x14(%ebp)
    6488:	c7 45 cc 00 02 00 00 	movl   $0x200,-0x34(%ebp)
    648f:	c7 45 d0 03 00 00 00 	movl   $0x3,-0x30(%ebp)
    6496:	8b 45 08             	mov    0x8(%ebp),%eax
    6499:	c1 f8 08             	sar    $0x8,%eax
    649c:	25 ff 00 00 00       	and    $0xff,%eax
    64a1:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    64a8:	83 f8 ec             	cmp    $0xffffffec,%eax
    64ab:	75 24                	jne    64d1 <read_super_block+0x77>
    64ad:	c7 44 24 0c df 01 00 	movl   $0x1df,0xc(%esp)
    64b4:	00 
    64b5:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    64bc:	00 
    64bd:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    64c4:	00 
    64c5:	c7 04 24 88 14 01 00 	movl   $0x11488,(%esp)
    64cc:	e8 f9 9e 00 00       	call   103ca <assertion_failure>
    64d1:	8b 45 08             	mov    0x8(%ebp),%eax
    64d4:	c1 f8 08             	sar    $0x8,%eax
    64d7:	25 ff 00 00 00       	and    $0xff,%eax
    64dc:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    64e3:	8d 55 c0             	lea    -0x40(%ebp),%edx
    64e6:	89 54 24 08          	mov    %edx,0x8(%esp)
    64ea:	89 44 24 04          	mov    %eax,0x4(%esp)
    64ee:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    64f5:	e8 7e 9c 00 00       	call   10178 <send_recv>
    64fa:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    6501:	eb 1e                	jmp    6521 <read_super_block+0xc7>
    6503:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6506:	c1 e0 02             	shl    $0x2,%eax
    6509:	89 c2                	mov    %eax,%edx
    650b:	c1 e2 04             	shl    $0x4,%edx
    650e:	29 c2                	sub    %eax,%edx
    6510:	8d 82 30 0a 05 00    	lea    0x50a30(%edx),%eax
    6516:	8b 40 08             	mov    0x8(%eax),%eax
    6519:	85 c0                	test   %eax,%eax
    651b:	74 0c                	je     6529 <read_super_block+0xcf>
    651d:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    6521:	83 7d f4 07          	cmpl   $0x7,-0xc(%ebp)
    6525:	7e dc                	jle    6503 <read_super_block+0xa9>
    6527:	eb 01                	jmp    652a <read_super_block+0xd0>
    6529:	90                   	nop
    652a:	83 7d f4 08          	cmpl   $0x8,-0xc(%ebp)
    652e:	75 0c                	jne    653c <read_super_block+0xe2>
    6530:	c7 04 24 b7 14 01 00 	movl   $0x114b7,(%esp)
    6537:	e8 fb b9 ff ff       	call   1f37 <panic>
    653c:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6541:	89 45 f0             	mov    %eax,-0x10(%ebp)
    6544:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6547:	c1 e0 02             	shl    $0x2,%eax
    654a:	89 c2                	mov    %eax,%edx
    654c:	c1 e2 04             	shl    $0x4,%edx
    654f:	29 c2                	sub    %eax,%edx
    6551:	81 c2 00 0a 05 00    	add    $0x50a00,%edx
    6557:	8b 45 f0             	mov    -0x10(%ebp),%eax
    655a:	8b 08                	mov    (%eax),%ecx
    655c:	89 0a                	mov    %ecx,(%edx)
    655e:	8b 48 04             	mov    0x4(%eax),%ecx
    6561:	89 4a 04             	mov    %ecx,0x4(%edx)
    6564:	8b 48 08             	mov    0x8(%eax),%ecx
    6567:	89 4a 08             	mov    %ecx,0x8(%edx)
    656a:	8b 48 0c             	mov    0xc(%eax),%ecx
    656d:	89 4a 0c             	mov    %ecx,0xc(%edx)
    6570:	8b 48 10             	mov    0x10(%eax),%ecx
    6573:	89 4a 10             	mov    %ecx,0x10(%edx)
    6576:	8b 48 14             	mov    0x14(%eax),%ecx
    6579:	89 4a 14             	mov    %ecx,0x14(%edx)
    657c:	8b 48 18             	mov    0x18(%eax),%ecx
    657f:	89 4a 18             	mov    %ecx,0x18(%edx)
    6582:	8b 48 1c             	mov    0x1c(%eax),%ecx
    6585:	89 4a 1c             	mov    %ecx,0x1c(%edx)
    6588:	8b 48 20             	mov    0x20(%eax),%ecx
    658b:	89 4a 20             	mov    %ecx,0x20(%edx)
    658e:	8b 48 24             	mov    0x24(%eax),%ecx
    6591:	89 4a 24             	mov    %ecx,0x24(%edx)
    6594:	8b 48 28             	mov    0x28(%eax),%ecx
    6597:	89 4a 28             	mov    %ecx,0x28(%edx)
    659a:	8b 48 2c             	mov    0x2c(%eax),%ecx
    659d:	89 4a 2c             	mov    %ecx,0x2c(%edx)
    65a0:	8b 48 30             	mov    0x30(%eax),%ecx
    65a3:	89 4a 30             	mov    %ecx,0x30(%edx)
    65a6:	8b 48 34             	mov    0x34(%eax),%ecx
    65a9:	89 4a 34             	mov    %ecx,0x34(%edx)
    65ac:	8b 40 38             	mov    0x38(%eax),%eax
    65af:	89 42 38             	mov    %eax,0x38(%edx)
    65b2:	8b 45 f4             	mov    -0xc(%ebp),%eax
    65b5:	c1 e0 02             	shl    $0x2,%eax
    65b8:	89 c2                	mov    %eax,%edx
    65ba:	c1 e2 04             	shl    $0x4,%edx
    65bd:	29 c2                	sub    %eax,%edx
    65bf:	81 c2 30 0a 05 00    	add    $0x50a30,%edx
    65c5:	8b 45 08             	mov    0x8(%ebp),%eax
    65c8:	89 42 08             	mov    %eax,0x8(%edx)
    65cb:	c9                   	leave  
    65cc:	c3                   	ret    

000065cd <get_super_block>:
    65cd:	55                   	push   %ebp
    65ce:	89 e5                	mov    %esp,%ebp
    65d0:	83 ec 28             	sub    $0x28,%esp
    65d3:	c7 45 f4 00 0a 05 00 	movl   $0x50a00,-0xc(%ebp)
    65da:	eb 14                	jmp    65f0 <get_super_block+0x23>
    65dc:	8b 45 f4             	mov    -0xc(%ebp),%eax
    65df:	8b 40 38             	mov    0x38(%eax),%eax
    65e2:	3b 45 08             	cmp    0x8(%ebp),%eax
    65e5:	75 05                	jne    65ec <get_super_block+0x1f>
    65e7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    65ea:	eb 26                	jmp    6612 <get_super_block+0x45>
    65ec:	83 45 f4 3c          	addl   $0x3c,-0xc(%ebp)
    65f0:	b8 e0 0b 05 00       	mov    $0x50be0,%eax
    65f5:	39 45 f4             	cmp    %eax,-0xc(%ebp)
    65f8:	72 e2                	jb     65dc <get_super_block+0xf>
    65fa:	8b 45 08             	mov    0x8(%ebp),%eax
    65fd:	89 44 24 04          	mov    %eax,0x4(%esp)
    6601:	c7 04 24 d4 14 01 00 	movl   $0x114d4,(%esp)
    6608:	e8 2a b9 ff ff       	call   1f37 <panic>
    660d:	b8 00 00 00 00       	mov    $0x0,%eax
    6612:	c9                   	leave  
    6613:	c3                   	ret    

00006614 <get_inode>:
    6614:	55                   	push   %ebp
    6615:	89 e5                	mov    %esp,%ebp
    6617:	53                   	push   %ebx
    6618:	83 ec 44             	sub    $0x44,%esp
    661b:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    661f:	75 0a                	jne    662b <get_inode+0x17>
    6621:	b8 00 00 00 00       	mov    $0x0,%eax
    6626:	e9 60 01 00 00       	jmp    678b <get_inode+0x177>
    662b:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    6632:	c7 45 f4 80 4b 01 00 	movl   $0x14b80,-0xc(%ebp)
    6639:	eb 47                	jmp    6682 <get_inode+0x6e>
    663b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    663e:	8b 40 24             	mov    0x24(%eax),%eax
    6641:	85 c0                	test   %eax,%eax
    6643:	74 2d                	je     6672 <get_inode+0x5e>
    6645:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6648:	8b 40 20             	mov    0x20(%eax),%eax
    664b:	3b 45 08             	cmp    0x8(%ebp),%eax
    664e:	75 2e                	jne    667e <get_inode+0x6a>
    6650:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6653:	8b 40 28             	mov    0x28(%eax),%eax
    6656:	3b 45 0c             	cmp    0xc(%ebp),%eax
    6659:	75 23                	jne    667e <get_inode+0x6a>
    665b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    665e:	8b 40 24             	mov    0x24(%eax),%eax
    6661:	8d 50 01             	lea    0x1(%eax),%edx
    6664:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6667:	89 50 24             	mov    %edx,0x24(%eax)
    666a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    666d:	e9 19 01 00 00       	jmp    678b <get_inode+0x177>
    6672:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    6676:	75 06                	jne    667e <get_inode+0x6a>
    6678:	8b 45 f4             	mov    -0xc(%ebp),%eax
    667b:	89 45 f0             	mov    %eax,-0x10(%ebp)
    667e:	83 45 f4 2c          	addl   $0x2c,-0xc(%ebp)
    6682:	b8 80 56 01 00       	mov    $0x15680,%eax
    6687:	39 45 f4             	cmp    %eax,-0xc(%ebp)
    668a:	72 af                	jb     663b <get_inode+0x27>
    668c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    6690:	75 0c                	jne    669e <get_inode+0x8a>
    6692:	c7 04 24 f9 14 01 00 	movl   $0x114f9,(%esp)
    6699:	e8 99 b8 ff ff       	call   1f37 <panic>
    669e:	8b 45 f0             	mov    -0x10(%ebp),%eax
    66a1:	8b 55 08             	mov    0x8(%ebp),%edx
    66a4:	89 50 20             	mov    %edx,0x20(%eax)
    66a7:	8b 45 f0             	mov    -0x10(%ebp),%eax
    66aa:	8b 55 0c             	mov    0xc(%ebp),%edx
    66ad:	89 50 28             	mov    %edx,0x28(%eax)
    66b0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    66b3:	c7 40 24 01 00 00 00 	movl   $0x1,0x24(%eax)
    66ba:	8b 45 08             	mov    0x8(%ebp),%eax
    66bd:	89 04 24             	mov    %eax,(%esp)
    66c0:	e8 08 ff ff ff       	call   65cd <get_super_block>
    66c5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    66c8:	8b 45 ec             	mov    -0x14(%ebp),%eax
    66cb:	8b 50 0c             	mov    0xc(%eax),%edx
    66ce:	8b 45 ec             	mov    -0x14(%ebp),%eax
    66d1:	8b 40 10             	mov    0x10(%eax),%eax
    66d4:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
    66d7:	8b 45 0c             	mov    0xc(%ebp),%eax
    66da:	83 e8 01             	sub    $0x1,%eax
    66dd:	8d 50 0f             	lea    0xf(%eax),%edx
    66e0:	85 c0                	test   %eax,%eax
    66e2:	0f 48 c2             	cmovs  %edx,%eax
    66e5:	c1 f8 04             	sar    $0x4,%eax
    66e8:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    66eb:	83 c0 02             	add    $0x2,%eax
    66ee:	89 45 e8             	mov    %eax,-0x18(%ebp)
    66f1:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    66f7:	8b 45 e8             	mov    -0x18(%ebp),%eax
    66fa:	c1 e0 09             	shl    $0x9,%eax
    66fd:	89 c2                	mov    %eax,%edx
    66ff:	c1 fa 1f             	sar    $0x1f,%edx
    6702:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    6706:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    670d:	00 
    670e:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    6715:	00 
    6716:	89 44 24 08          	mov    %eax,0x8(%esp)
    671a:	89 54 24 0c          	mov    %edx,0xc(%esp)
    671e:	8b 45 08             	mov    0x8(%ebp),%eax
    6721:	89 44 24 04          	mov    %eax,0x4(%esp)
    6725:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    672c:	e8 7d fc ff ff       	call   63ae <rw_sector>
    6731:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6736:	89 c1                	mov    %eax,%ecx
    6738:	8b 45 0c             	mov    0xc(%ebp),%eax
    673b:	8d 50 ff             	lea    -0x1(%eax),%edx
    673e:	89 d0                	mov    %edx,%eax
    6740:	c1 f8 1f             	sar    $0x1f,%eax
    6743:	c1 e8 1c             	shr    $0x1c,%eax
    6746:	01 c2                	add    %eax,%edx
    6748:	83 e2 0f             	and    $0xf,%edx
    674b:	89 d3                	mov    %edx,%ebx
    674d:	29 c3                	sub    %eax,%ebx
    674f:	89 d8                	mov    %ebx,%eax
    6751:	c1 e0 05             	shl    $0x5,%eax
    6754:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    6757:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    675a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    675d:	8b 10                	mov    (%eax),%edx
    675f:	8b 45 f0             	mov    -0x10(%ebp),%eax
    6762:	89 10                	mov    %edx,(%eax)
    6764:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    6767:	8b 50 04             	mov    0x4(%eax),%edx
    676a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    676d:	89 50 04             	mov    %edx,0x4(%eax)
    6770:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    6773:	8b 50 08             	mov    0x8(%eax),%edx
    6776:	8b 45 f0             	mov    -0x10(%ebp),%eax
    6779:	89 50 08             	mov    %edx,0x8(%eax)
    677c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    677f:	8b 50 0c             	mov    0xc(%eax),%edx
    6782:	8b 45 f0             	mov    -0x10(%ebp),%eax
    6785:	89 50 0c             	mov    %edx,0xc(%eax)
    6788:	8b 45 f0             	mov    -0x10(%ebp),%eax
    678b:	83 c4 44             	add    $0x44,%esp
    678e:	5b                   	pop    %ebx
    678f:	5d                   	pop    %ebp
    6790:	c3                   	ret    

00006791 <put_inode>:
    6791:	55                   	push   %ebp
    6792:	89 e5                	mov    %esp,%ebp
    6794:	83 ec 18             	sub    $0x18,%esp
    6797:	8b 45 08             	mov    0x8(%ebp),%eax
    679a:	8b 40 24             	mov    0x24(%eax),%eax
    679d:	85 c0                	test   %eax,%eax
    679f:	7f 24                	jg     67c5 <put_inode+0x34>
    67a1:	c7 44 24 0c 4b 02 00 	movl   $0x24b,0xc(%esp)
    67a8:	00 
    67a9:	c7 44 24 08 65 12 01 	movl   $0x11265,0x8(%esp)
    67b0:	00 
    67b1:	c7 44 24 04 65 12 01 	movl   $0x11265,0x4(%esp)
    67b8:	00 
    67b9:	c7 04 24 11 15 01 00 	movl   $0x11511,(%esp)
    67c0:	e8 05 9c 00 00       	call   103ca <assertion_failure>
    67c5:	8b 45 08             	mov    0x8(%ebp),%eax
    67c8:	8b 40 24             	mov    0x24(%eax),%eax
    67cb:	8d 50 ff             	lea    -0x1(%eax),%edx
    67ce:	8b 45 08             	mov    0x8(%ebp),%eax
    67d1:	89 50 24             	mov    %edx,0x24(%eax)
    67d4:	c9                   	leave  
    67d5:	c3                   	ret    

000067d6 <sync_inode>:
    67d6:	55                   	push   %ebp
    67d7:	89 e5                	mov    %esp,%ebp
    67d9:	53                   	push   %ebx
    67da:	83 ec 34             	sub    $0x34,%esp
    67dd:	8b 45 08             	mov    0x8(%ebp),%eax
    67e0:	8b 40 20             	mov    0x20(%eax),%eax
    67e3:	89 04 24             	mov    %eax,(%esp)
    67e6:	e8 e2 fd ff ff       	call   65cd <get_super_block>
    67eb:	89 45 f4             	mov    %eax,-0xc(%ebp)
    67ee:	8b 45 f4             	mov    -0xc(%ebp),%eax
    67f1:	8b 50 0c             	mov    0xc(%eax),%edx
    67f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    67f7:	8b 40 10             	mov    0x10(%eax),%eax
    67fa:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
    67fd:	8b 45 08             	mov    0x8(%ebp),%eax
    6800:	8b 40 28             	mov    0x28(%eax),%eax
    6803:	83 e8 01             	sub    $0x1,%eax
    6806:	8d 50 0f             	lea    0xf(%eax),%edx
    6809:	85 c0                	test   %eax,%eax
    680b:	0f 48 c2             	cmovs  %edx,%eax
    680e:	c1 f8 04             	sar    $0x4,%eax
    6811:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    6814:	83 c0 02             	add    $0x2,%eax
    6817:	89 45 f0             	mov    %eax,-0x10(%ebp)
    681a:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    6820:	8b 45 f0             	mov    -0x10(%ebp),%eax
    6823:	c1 e0 09             	shl    $0x9,%eax
    6826:	89 c2                	mov    %eax,%edx
    6828:	c1 fa 1f             	sar    $0x1f,%edx
    682b:	8b 4d 08             	mov    0x8(%ebp),%ecx
    682e:	8b 49 20             	mov    0x20(%ecx),%ecx
    6831:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    6835:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    683c:	00 
    683d:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    6844:	00 
    6845:	89 44 24 08          	mov    %eax,0x8(%esp)
    6849:	89 54 24 0c          	mov    %edx,0xc(%esp)
    684d:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    6851:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    6858:	e8 51 fb ff ff       	call   63ae <rw_sector>
    685d:	a1 e8 32 01 00       	mov    0x132e8,%eax
    6862:	89 c1                	mov    %eax,%ecx
    6864:	8b 45 08             	mov    0x8(%ebp),%eax
    6867:	8b 40 28             	mov    0x28(%eax),%eax
    686a:	8d 50 ff             	lea    -0x1(%eax),%edx
    686d:	89 d0                	mov    %edx,%eax
    686f:	c1 f8 1f             	sar    $0x1f,%eax
    6872:	c1 e8 1c             	shr    $0x1c,%eax
    6875:	01 c2                	add    %eax,%edx
    6877:	83 e2 0f             	and    $0xf,%edx
    687a:	89 d3                	mov    %edx,%ebx
    687c:	29 c3                	sub    %eax,%ebx
    687e:	89 d8                	mov    %ebx,%eax
    6880:	c1 e0 05             	shl    $0x5,%eax
    6883:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    6886:	89 45 ec             	mov    %eax,-0x14(%ebp)
    6889:	8b 45 08             	mov    0x8(%ebp),%eax
    688c:	8b 10                	mov    (%eax),%edx
    688e:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6891:	89 10                	mov    %edx,(%eax)
    6893:	8b 45 08             	mov    0x8(%ebp),%eax
    6896:	8b 50 04             	mov    0x4(%eax),%edx
    6899:	8b 45 ec             	mov    -0x14(%ebp),%eax
    689c:	89 50 04             	mov    %edx,0x4(%eax)
    689f:	8b 45 08             	mov    0x8(%ebp),%eax
    68a2:	8b 50 08             	mov    0x8(%eax),%edx
    68a5:	8b 45 ec             	mov    -0x14(%ebp),%eax
    68a8:	89 50 08             	mov    %edx,0x8(%eax)
    68ab:	8b 45 08             	mov    0x8(%ebp),%eax
    68ae:	8b 50 0c             	mov    0xc(%eax),%edx
    68b1:	8b 45 ec             	mov    -0x14(%ebp),%eax
    68b4:	89 50 0c             	mov    %edx,0xc(%eax)
    68b7:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    68bd:	8b 45 f0             	mov    -0x10(%ebp),%eax
    68c0:	c1 e0 09             	shl    $0x9,%eax
    68c3:	89 c2                	mov    %eax,%edx
    68c5:	c1 fa 1f             	sar    $0x1f,%edx
    68c8:	8b 4d 08             	mov    0x8(%ebp),%ecx
    68cb:	8b 49 20             	mov    0x20(%ecx),%ecx
    68ce:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    68d2:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    68d9:	00 
    68da:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    68e1:	00 
    68e2:	89 44 24 08          	mov    %eax,0x8(%esp)
    68e6:	89 54 24 0c          	mov    %edx,0xc(%esp)
    68ea:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    68ee:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    68f5:	e8 b4 fa ff ff       	call   63ae <rw_sector>
    68fa:	83 c4 34             	add    $0x34,%esp
    68fd:	5b                   	pop    %ebx
    68fe:	5d                   	pop    %ebp
    68ff:	c3                   	ret    

00006900 <fs_fork>:
    6900:	55                   	push   %ebp
    6901:	89 e5                	mov    %esp,%ebp
    6903:	83 ec 10             	sub    $0x10,%esp
    6906:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    690b:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    6911:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    6916:	89 45 f8             	mov    %eax,-0x8(%ebp)
    6919:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
    6920:	eb 4d                	jmp    696f <fs_fork+0x6f>
    6922:	8b 45 f8             	mov    -0x8(%ebp),%eax
    6925:	8b 55 fc             	mov    -0x4(%ebp),%edx
    6928:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    692e:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    6932:	85 c0                	test   %eax,%eax
    6934:	74 35                	je     696b <fs_fork+0x6b>
    6936:	8b 45 f8             	mov    -0x8(%ebp),%eax
    6939:	8b 55 fc             	mov    -0x4(%ebp),%edx
    693c:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    6942:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    6946:	8b 50 08             	mov    0x8(%eax),%edx
    6949:	83 c2 01             	add    $0x1,%edx
    694c:	89 50 08             	mov    %edx,0x8(%eax)
    694f:	8b 45 f8             	mov    -0x8(%ebp),%eax
    6952:	8b 55 fc             	mov    -0x4(%ebp),%edx
    6955:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    695b:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    695f:	8b 40 0c             	mov    0xc(%eax),%eax
    6962:	8b 50 24             	mov    0x24(%eax),%edx
    6965:	83 c2 01             	add    $0x1,%edx
    6968:	89 50 24             	mov    %edx,0x24(%eax)
    696b:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
    696f:	83 7d fc 3f          	cmpl   $0x3f,-0x4(%ebp)
    6973:	7e ad                	jle    6922 <fs_fork+0x22>
    6975:	b8 00 00 00 00       	mov    $0x0,%eax
    697a:	c9                   	leave  
    697b:	c3                   	ret    

0000697c <fs_exit>:
    697c:	55                   	push   %ebp
    697d:	89 e5                	mov    %esp,%ebp
    697f:	83 ec 10             	sub    $0x10,%esp
    6982:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    6987:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    698d:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    6992:	89 45 f8             	mov    %eax,-0x8(%ebp)
    6995:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
    699c:	eb 7f                	jmp    6a1d <fs_exit+0xa1>
    699e:	8b 45 f8             	mov    -0x8(%ebp),%eax
    69a1:	8b 55 fc             	mov    -0x4(%ebp),%edx
    69a4:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    69aa:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    69ae:	85 c0                	test   %eax,%eax
    69b0:	74 67                	je     6a19 <fs_exit+0x9d>
    69b2:	8b 45 f8             	mov    -0x8(%ebp),%eax
    69b5:	8b 55 fc             	mov    -0x4(%ebp),%edx
    69b8:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    69be:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    69c2:	8b 40 0c             	mov    0xc(%eax),%eax
    69c5:	8b 50 24             	mov    0x24(%eax),%edx
    69c8:	83 ea 01             	sub    $0x1,%edx
    69cb:	89 50 24             	mov    %edx,0x24(%eax)
    69ce:	8b 45 f8             	mov    -0x8(%ebp),%eax
    69d1:	8b 55 fc             	mov    -0x4(%ebp),%edx
    69d4:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    69da:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    69de:	8b 50 08             	mov    0x8(%eax),%edx
    69e1:	83 ea 01             	sub    $0x1,%edx
    69e4:	89 50 08             	mov    %edx,0x8(%eax)
    69e7:	8b 40 08             	mov    0x8(%eax),%eax
    69ea:	85 c0                	test   %eax,%eax
    69ec:	75 17                	jne    6a05 <fs_exit+0x89>
    69ee:	8b 45 f8             	mov    -0x8(%ebp),%eax
    69f1:	8b 55 fc             	mov    -0x4(%ebp),%edx
    69f4:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    69fa:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    69fe:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    6a05:	8b 45 f8             	mov    -0x8(%ebp),%eax
    6a08:	8b 55 fc             	mov    -0x4(%ebp),%edx
    6a0b:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    6a11:	c7 44 90 06 00 00 00 	movl   $0x0,0x6(%eax,%edx,4)
    6a18:	00 
    6a19:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
    6a1d:	83 7d fc 3f          	cmpl   $0x3f,-0x4(%ebp)
    6a21:	0f 8e 77 ff ff ff    	jle    699e <fs_exit+0x22>
    6a27:	b8 00 00 00 00       	mov    $0x0,%eax
    6a2c:	c9                   	leave  
    6a2d:	c3                   	ret    
    6a2e:	90                   	nop
    6a2f:	90                   	nop

00006a30 <do_open>:
    6a30:	55                   	push   %ebp
    6a31:	89 e5                	mov    %esp,%ebp
    6a33:	53                   	push   %ebx
    6a34:	81 ec 74 01 00 00    	sub    $0x174,%esp
    6a3a:	c7 45 f4 ff ff ff ff 	movl   $0xffffffff,-0xc(%ebp)
    6a41:	a1 28 e8 04 00       	mov    0x4e828,%eax
    6a46:	89 45 e8             	mov    %eax,-0x18(%ebp)
    6a49:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    6a4e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    6a51:	a1 20 e8 04 00       	mov    0x4e820,%eax
    6a56:	89 45 e0             	mov    %eax,-0x20(%ebp)
    6a59:	83 7d e4 7f          	cmpl   $0x7f,-0x1c(%ebp)
    6a5d:	7e 24                	jle    6a83 <do_open+0x53>
    6a5f:	c7 44 24 0c 39 00 00 	movl   $0x39,0xc(%esp)
    6a66:	00 
    6a67:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6a6e:	00 
    6a6f:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6a76:	00 
    6a77:	c7 04 24 2b 15 01 00 	movl   $0x1152b,(%esp)
    6a7e:	e8 47 99 00 00       	call   103ca <assertion_failure>
    6a83:	a1 48 e8 04 00       	mov    0x4e848,%eax
    6a88:	89 44 24 04          	mov    %eax,0x4(%esp)
    6a8c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    6a8f:	89 04 24             	mov    %eax,(%esp)
    6a92:	e8 3e ca ff ff       	call   34d5 <va2la>
    6a97:	89 c3                	mov    %eax,%ebx
    6a99:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    6a9f:	89 44 24 04          	mov    %eax,0x4(%esp)
    6aa3:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    6aaa:	e8 26 ca ff ff       	call   34d5 <va2la>
    6aaf:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    6ab2:	89 54 24 08          	mov    %edx,0x8(%esp)
    6ab6:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    6aba:	89 04 24             	mov    %eax,(%esp)
    6abd:	e8 2e 96 00 00       	call   100f0 <memcpy>
    6ac2:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    6ac8:	03 45 e4             	add    -0x1c(%ebp),%eax
    6acb:	c6 00 00             	movb   $0x0,(%eax)
    6ace:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    6ad5:	eb 22                	jmp    6af9 <do_open+0xc9>
    6ad7:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    6adc:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6adf:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    6ae5:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    6ae9:	85 c0                	test   %eax,%eax
    6aeb:	75 08                	jne    6af5 <do_open+0xc5>
    6aed:	8b 45 f0             	mov    -0x10(%ebp),%eax
    6af0:	89 45 f4             	mov    %eax,-0xc(%ebp)
    6af3:	eb 0a                	jmp    6aff <do_open+0xcf>
    6af5:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    6af9:	83 7d f0 3f          	cmpl   $0x3f,-0x10(%ebp)
    6afd:	7e d8                	jle    6ad7 <do_open+0xa7>
    6aff:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    6b03:	78 06                	js     6b0b <do_open+0xdb>
    6b05:	83 7d f4 3f          	cmpl   $0x3f,-0xc(%ebp)
    6b09:	7e 2a                	jle    6b35 <do_open+0x105>
    6b0b:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    6b10:	89 c2                	mov    %eax,%edx
    6b12:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    6b17:	89 d1                	mov    %edx,%ecx
    6b19:	29 c1                	sub    %eax,%ecx
    6b1b:	89 c8                	mov    %ecx,%eax
    6b1d:	d1 f8                	sar    %eax
    6b1f:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    6b25:	89 44 24 04          	mov    %eax,0x4(%esp)
    6b29:	c7 04 24 3f 15 01 00 	movl   $0x1153f,(%esp)
    6b30:	e8 02 b4 ff ff       	call   1f37 <panic>
    6b35:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    6b3c:	eb 1d                	jmp    6b5b <do_open+0x12b>
    6b3e:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6b41:	89 d0                	mov    %edx,%eax
    6b43:	c1 e0 02             	shl    $0x2,%eax
    6b46:	01 d0                	add    %edx,%eax
    6b48:	c1 e0 02             	shl    $0x2,%eax
    6b4b:	05 60 e8 04 00       	add    $0x4e860,%eax
    6b50:	8b 40 0c             	mov    0xc(%eax),%eax
    6b53:	85 c0                	test   %eax,%eax
    6b55:	74 0c                	je     6b63 <do_open+0x133>
    6b57:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    6b5b:	83 7d f0 3f          	cmpl   $0x3f,-0x10(%ebp)
    6b5f:	7e dd                	jle    6b3e <do_open+0x10e>
    6b61:	eb 01                	jmp    6b64 <do_open+0x134>
    6b63:	90                   	nop
    6b64:	83 7d f0 3f          	cmpl   $0x3f,-0x10(%ebp)
    6b68:	7e 2a                	jle    6b94 <do_open+0x164>
    6b6a:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    6b6f:	89 c2                	mov    %eax,%edx
    6b71:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    6b76:	89 d1                	mov    %edx,%ecx
    6b78:	29 c1                	sub    %eax,%ecx
    6b7a:	89 c8                	mov    %ecx,%eax
    6b7c:	d1 f8                	sar    %eax
    6b7e:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    6b84:	89 44 24 04          	mov    %eax,0x4(%esp)
    6b88:	c7 04 24 58 15 01 00 	movl   $0x11558,(%esp)
    6b8f:	e8 a3 b3 ff ff       	call   1f37 <panic>
    6b94:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    6b9a:	89 04 24             	mov    %eax,(%esp)
    6b9d:	e8 6e 47 00 00       	call   b310 <search_file>
    6ba2:	89 45 dc             	mov    %eax,-0x24(%ebp)
    6ba5:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    6bac:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    6bb0:	75 31                	jne    6be3 <do_open+0x1b3>
    6bb2:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6bb5:	83 e0 01             	and    $0x1,%eax
    6bb8:	84 c0                	test   %al,%al
    6bba:	74 1d                	je     6bd9 <do_open+0x1a9>
    6bbc:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6bbf:	89 44 24 04          	mov    %eax,0x4(%esp)
    6bc3:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    6bc9:	89 04 24             	mov    %eax,(%esp)
    6bcc:	e8 f6 02 00 00       	call   6ec7 <create_file>
    6bd1:	89 45 ec             	mov    %eax,-0x14(%ebp)
    6bd4:	e9 ed 00 00 00       	jmp    6cc6 <do_open+0x296>
    6bd9:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    6bde:	e9 db 02 00 00       	jmp    6ebe <do_open+0x48e>
    6be3:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6be6:	83 e0 02             	and    $0x2,%eax
    6be9:	85 c0                	test   %eax,%eax
    6beb:	0f 84 cb 00 00 00    	je     6cbc <do_open+0x28c>
    6bf1:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6bf4:	83 e0 01             	and    $0x1,%eax
    6bf7:	84 c0                	test   %al,%al
    6bf9:	74 3e                	je     6c39 <do_open+0x209>
    6bfb:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6bfe:	83 e0 04             	and    $0x4,%eax
    6c01:	85 c0                	test   %eax,%eax
    6c03:	75 34                	jne    6c39 <do_open+0x209>
    6c05:	83 7d e8 03          	cmpl   $0x3,-0x18(%ebp)
    6c09:	74 24                	je     6c2f <do_open+0x1ff>
    6c0b:	c7 44 24 0c 60 00 00 	movl   $0x60,0xc(%esp)
    6c12:	00 
    6c13:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6c1a:	00 
    6c1b:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6c22:	00 
    6c23:	c7 04 24 78 15 01 00 	movl   $0x11578,(%esp)
    6c2a:	e8 9b 97 00 00       	call   103ca <assertion_failure>
    6c2f:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    6c34:	e9 85 02 00 00       	jmp    6ebe <do_open+0x48e>
    6c39:	83 7d e8 02          	cmpl   $0x2,-0x18(%ebp)
    6c3d:	74 30                	je     6c6f <do_open+0x23f>
    6c3f:	83 7d e8 06          	cmpl   $0x6,-0x18(%ebp)
    6c43:	74 2a                	je     6c6f <do_open+0x23f>
    6c45:	83 7d e8 07          	cmpl   $0x7,-0x18(%ebp)
    6c49:	74 24                	je     6c6f <do_open+0x23f>
    6c4b:	c7 44 24 0c 66 00 00 	movl   $0x66,0xc(%esp)
    6c52:	00 
    6c53:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6c5a:	00 
    6c5b:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6c62:	00 
    6c63:	c7 04 24 94 15 01 00 	movl   $0x11594,(%esp)
    6c6a:	e8 5b 97 00 00       	call   103ca <assertion_failure>
    6c6f:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
    6c75:	89 44 24 08          	mov    %eax,0x8(%esp)
    6c79:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    6c7f:	89 44 24 04          	mov    %eax,0x4(%esp)
    6c83:	8d 85 a0 fe ff ff    	lea    -0x160(%ebp),%eax
    6c89:	89 04 24             	mov    %eax,(%esp)
    6c8c:	e8 06 47 00 00       	call   b397 <strip_path>
    6c91:	85 c0                	test   %eax,%eax
    6c93:	74 0a                	je     6c9f <do_open+0x26f>
    6c95:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    6c9a:	e9 1f 02 00 00       	jmp    6ebe <do_open+0x48e>
    6c9f:	8b 85 50 ff ff ff    	mov    -0xb0(%ebp),%eax
    6ca5:	8b 40 20             	mov    0x20(%eax),%eax
    6ca8:	8b 55 dc             	mov    -0x24(%ebp),%edx
    6cab:	89 54 24 04          	mov    %edx,0x4(%esp)
    6caf:	89 04 24             	mov    %eax,(%esp)
    6cb2:	e8 5d f9 ff ff       	call   6614 <get_inode>
    6cb7:	89 45 ec             	mov    %eax,-0x14(%ebp)
    6cba:	eb 0a                	jmp    6cc6 <do_open+0x296>
    6cbc:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    6cc1:	e9 f8 01 00 00       	jmp    6ebe <do_open+0x48e>
    6cc6:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6cc9:	83 e0 04             	and    $0x4,%eax
    6ccc:	85 c0                	test   %eax,%eax
    6cce:	74 3f                	je     6d0f <do_open+0x2df>
    6cd0:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    6cd4:	75 24                	jne    6cfa <do_open+0x2ca>
    6cd6:	c7 44 24 0c 74 00 00 	movl   $0x74,0xc(%esp)
    6cdd:	00 
    6cde:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6ce5:	00 
    6ce6:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6ced:	00 
    6cee:	c7 04 24 f4 15 01 00 	movl   $0x115f4,(%esp)
    6cf5:	e8 d0 96 00 00       	call   103ca <assertion_failure>
    6cfa:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6cfd:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    6d04:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6d07:	89 04 24             	mov    %eax,(%esp)
    6d0a:	e8 c7 fa ff ff       	call   67d6 <sync_inode>
    6d0f:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    6d13:	0f 84 9b 01 00 00    	je     6eb4 <do_open+0x484>
    6d19:	8b 0d a4 da 04 00    	mov    0x4daa4,%ecx
    6d1f:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6d22:	89 d0                	mov    %edx,%eax
    6d24:	c1 e0 02             	shl    $0x2,%eax
    6d27:	01 d0                	add    %edx,%eax
    6d29:	c1 e0 02             	shl    $0x2,%eax
    6d2c:	8d 90 60 e8 04 00    	lea    0x4e860(%eax),%edx
    6d32:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6d35:	05 8c 00 00 00       	add    $0x8c,%eax
    6d3a:	89 54 81 06          	mov    %edx,0x6(%ecx,%eax,4)
    6d3e:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6d41:	89 d0                	mov    %edx,%eax
    6d43:	c1 e0 02             	shl    $0x2,%eax
    6d46:	01 d0                	add    %edx,%eax
    6d48:	c1 e0 02             	shl    $0x2,%eax
    6d4b:	8d 90 60 e8 04 00    	lea    0x4e860(%eax),%edx
    6d51:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6d54:	89 42 0c             	mov    %eax,0xc(%edx)
    6d57:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6d5a:	89 d0                	mov    %edx,%eax
    6d5c:	c1 e0 02             	shl    $0x2,%eax
    6d5f:	01 d0                	add    %edx,%eax
    6d61:	c1 e0 02             	shl    $0x2,%eax
    6d64:	8d 90 60 e8 04 00    	lea    0x4e860(%eax),%edx
    6d6a:	8b 45 e8             	mov    -0x18(%ebp),%eax
    6d6d:	89 02                	mov    %eax,(%edx)
    6d6f:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6d72:	89 d0                	mov    %edx,%eax
    6d74:	c1 e0 02             	shl    $0x2,%eax
    6d77:	01 d0                	add    %edx,%eax
    6d79:	c1 e0 02             	shl    $0x2,%eax
    6d7c:	05 60 e8 04 00       	add    $0x4e860,%eax
    6d81:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%eax)
    6d88:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6d8b:	89 d0                	mov    %edx,%eax
    6d8d:	c1 e0 02             	shl    $0x2,%eax
    6d90:	01 d0                	add    %edx,%eax
    6d92:	c1 e0 02             	shl    $0x2,%eax
    6d95:	05 60 e8 04 00       	add    $0x4e860,%eax
    6d9a:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    6da1:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6da4:	8b 00                	mov    (%eax),%eax
    6da6:	25 00 f0 00 00       	and    $0xf000,%eax
    6dab:	89 45 d8             	mov    %eax,-0x28(%ebp)
    6dae:	81 7d d8 00 20 00 00 	cmpl   $0x2000,-0x28(%ebp)
    6db5:	0f 85 be 00 00 00    	jne    6e79 <do_open+0x449>
    6dbb:	c7 85 24 ff ff ff d1 	movl   $0x7d1,-0xdc(%ebp)
    6dc2:	07 00 00 
    6dc5:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6dc8:	8b 40 08             	mov    0x8(%eax),%eax
    6dcb:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    6dce:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    6dd1:	25 ff 00 00 00       	and    $0xff,%eax
    6dd6:	89 85 34 ff ff ff    	mov    %eax,-0xcc(%ebp)
    6ddc:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    6ddf:	c1 f8 08             	sar    $0x8,%eax
    6de2:	25 ff 00 00 00       	and    $0xff,%eax
    6de7:	83 f8 04             	cmp    $0x4,%eax
    6dea:	74 24                	je     6e10 <do_open+0x3e0>
    6dec:	c7 44 24 0c 8b 00 00 	movl   $0x8b,0xc(%esp)
    6df3:	00 
    6df4:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6dfb:	00 
    6dfc:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6e03:	00 
    6e04:	c7 04 24 f8 15 01 00 	movl   $0x115f8,(%esp)
    6e0b:	e8 ba 95 00 00       	call   103ca <assertion_failure>
    6e10:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    6e13:	c1 f8 08             	sar    $0x8,%eax
    6e16:	25 ff 00 00 00       	and    $0xff,%eax
    6e1b:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    6e22:	83 f8 ec             	cmp    $0xffffffec,%eax
    6e25:	75 24                	jne    6e4b <do_open+0x41b>
    6e27:	c7 44 24 0c 8c 00 00 	movl   $0x8c,0xc(%esp)
    6e2e:	00 
    6e2f:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6e36:	00 
    6e37:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6e3e:	00 
    6e3f:	c7 04 24 08 16 01 00 	movl   $0x11608,(%esp)
    6e46:	e8 7f 95 00 00       	call   103ca <assertion_failure>
    6e4b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    6e4e:	c1 f8 08             	sar    $0x8,%eax
    6e51:	25 ff 00 00 00       	and    $0xff,%eax
    6e56:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    6e5d:	8d 95 20 ff ff ff    	lea    -0xe0(%ebp),%edx
    6e63:	89 54 24 08          	mov    %edx,0x8(%esp)
    6e67:	89 44 24 04          	mov    %eax,0x4(%esp)
    6e6b:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    6e72:	e8 01 93 00 00       	call   10178 <send_recv>
    6e77:	eb 42                	jmp    6ebb <do_open+0x48b>
    6e79:	81 7d d8 00 40 00 00 	cmpl   $0x4000,-0x28(%ebp)
    6e80:	74 39                	je     6ebb <do_open+0x48b>
    6e82:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6e85:	8b 00                	mov    (%eax),%eax
    6e87:	3d 00 80 00 00       	cmp    $0x8000,%eax
    6e8c:	74 2d                	je     6ebb <do_open+0x48b>
    6e8e:	c7 44 24 0c 94 00 00 	movl   $0x94,0xc(%esp)
    6e95:	00 
    6e96:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    6e9d:	00 
    6e9e:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    6ea5:	00 
    6ea6:	c7 04 24 37 16 01 00 	movl   $0x11637,(%esp)
    6ead:	e8 18 95 00 00       	call   103ca <assertion_failure>
    6eb2:	eb 07                	jmp    6ebb <do_open+0x48b>
    6eb4:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    6eb9:	eb 03                	jmp    6ebe <do_open+0x48e>
    6ebb:	8b 45 f4             	mov    -0xc(%ebp),%eax
    6ebe:	81 c4 74 01 00 00    	add    $0x174,%esp
    6ec4:	5b                   	pop    %ebx
    6ec5:	5d                   	pop    %ebp
    6ec6:	c3                   	ret    

00006ec7 <create_file>:
    6ec7:	55                   	push   %ebp
    6ec8:	89 e5                	mov    %esp,%ebp
    6eca:	81 ec a8 00 00 00    	sub    $0xa8,%esp
    6ed0:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    6ed6:	89 44 24 08          	mov    %eax,0x8(%esp)
    6eda:	8b 45 08             	mov    0x8(%ebp),%eax
    6edd:	89 44 24 04          	mov    %eax,0x4(%esp)
    6ee1:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
    6ee7:	89 04 24             	mov    %eax,(%esp)
    6eea:	e8 a8 44 00 00       	call   b397 <strip_path>
    6eef:	85 c0                	test   %eax,%eax
    6ef1:	74 07                	je     6efa <create_file+0x33>
    6ef3:	b8 00 00 00 00       	mov    $0x0,%eax
    6ef8:	eb 7f                	jmp    6f79 <create_file+0xb2>
    6efa:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6f00:	8b 40 20             	mov    0x20(%eax),%eax
    6f03:	89 04 24             	mov    %eax,(%esp)
    6f06:	e8 f0 03 00 00       	call   72fb <alloc_imap_bit>
    6f0b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    6f0e:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6f14:	8b 40 20             	mov    0x20(%eax),%eax
    6f17:	c7 44 24 04 00 08 00 	movl   $0x800,0x4(%esp)
    6f1e:	00 
    6f1f:	89 04 24             	mov    %eax,(%esp)
    6f22:	e8 65 05 00 00       	call   748c <alloc_smap_bit>
    6f27:	89 45 f0             	mov    %eax,-0x10(%ebp)
    6f2a:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6f30:	8b 40 20             	mov    0x20(%eax),%eax
    6f33:	c7 44 24 0c 00 80 00 	movl   $0x8000,0xc(%esp)
    6f3a:	00 
    6f3b:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6f3e:	89 54 24 08          	mov    %edx,0x8(%esp)
    6f42:	8b 55 f4             	mov    -0xc(%ebp),%edx
    6f45:	89 54 24 04          	mov    %edx,0x4(%esp)
    6f49:	89 04 24             	mov    %eax,(%esp)
    6f4c:	e8 36 07 00 00       	call   7687 <new_inode>
    6f51:	89 45 ec             	mov    %eax,-0x14(%ebp)
    6f54:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6f57:	8b 50 28             	mov    0x28(%eax),%edx
    6f5a:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6f60:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
    6f66:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    6f6a:	89 54 24 04          	mov    %edx,0x4(%esp)
    6f6e:	89 04 24             	mov    %eax,(%esp)
    6f71:	e8 7d 07 00 00       	call   76f3 <new_dir_entry>
    6f76:	8b 45 ec             	mov    -0x14(%ebp),%eax
    6f79:	c9                   	leave  
    6f7a:	c3                   	ret    

00006f7b <create_dir>:
    6f7b:	55                   	push   %ebp
    6f7c:	89 e5                	mov    %esp,%ebp
    6f7e:	81 ec a8 00 00 00    	sub    $0xa8,%esp
    6f84:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    6f8a:	89 44 24 08          	mov    %eax,0x8(%esp)
    6f8e:	8b 45 08             	mov    0x8(%ebp),%eax
    6f91:	89 44 24 04          	mov    %eax,0x4(%esp)
    6f95:	8d 85 6c ff ff ff    	lea    -0x94(%ebp),%eax
    6f9b:	89 04 24             	mov    %eax,(%esp)
    6f9e:	e8 f4 43 00 00       	call   b397 <strip_path>
    6fa3:	85 c0                	test   %eax,%eax
    6fa5:	74 07                	je     6fae <create_dir+0x33>
    6fa7:	b8 00 00 00 00       	mov    $0x0,%eax
    6fac:	eb 7f                	jmp    702d <create_dir+0xb2>
    6fae:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6fb4:	8b 40 20             	mov    0x20(%eax),%eax
    6fb7:	89 04 24             	mov    %eax,(%esp)
    6fba:	e8 3c 03 00 00       	call   72fb <alloc_imap_bit>
    6fbf:	89 45 f4             	mov    %eax,-0xc(%ebp)
    6fc2:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6fc8:	8b 40 20             	mov    0x20(%eax),%eax
    6fcb:	c7 44 24 04 00 08 00 	movl   $0x800,0x4(%esp)
    6fd2:	00 
    6fd3:	89 04 24             	mov    %eax,(%esp)
    6fd6:	e8 b1 04 00 00       	call   748c <alloc_smap_bit>
    6fdb:	89 45 f0             	mov    %eax,-0x10(%ebp)
    6fde:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    6fe4:	8b 40 20             	mov    0x20(%eax),%eax
    6fe7:	c7 44 24 0c 00 40 00 	movl   $0x4000,0xc(%esp)
    6fee:	00 
    6fef:	8b 55 f0             	mov    -0x10(%ebp),%edx
    6ff2:	89 54 24 08          	mov    %edx,0x8(%esp)
    6ff6:	8b 55 f4             	mov    -0xc(%ebp),%edx
    6ff9:	89 54 24 04          	mov    %edx,0x4(%esp)
    6ffd:	89 04 24             	mov    %eax,(%esp)
    7000:	e8 82 06 00 00       	call   7687 <new_inode>
    7005:	89 45 ec             	mov    %eax,-0x14(%ebp)
    7008:	8b 45 ec             	mov    -0x14(%ebp),%eax
    700b:	8b 50 28             	mov    0x28(%eax),%edx
    700e:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
    7014:	8d 8d 6c ff ff ff    	lea    -0x94(%ebp),%ecx
    701a:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    701e:	89 54 24 04          	mov    %edx,0x4(%esp)
    7022:	89 04 24             	mov    %eax,(%esp)
    7025:	e8 c9 06 00 00       	call   76f3 <new_dir_entry>
    702a:	8b 45 ec             	mov    -0x14(%ebp),%eax
    702d:	c9                   	leave  
    702e:	c3                   	ret    

0000702f <do_mkdir>:
    702f:	55                   	push   %ebp
    7030:	89 e5                	mov    %esp,%ebp
    7032:	53                   	push   %ebx
    7033:	81 ec a4 00 00 00    	sub    $0xa4,%esp
    7039:	a1 28 e8 04 00       	mov    0x4e828,%eax
    703e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    7041:	a1 20 e8 04 00       	mov    0x4e820,%eax
    7046:	89 45 f0             	mov    %eax,-0x10(%ebp)
    7049:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    704e:	89 45 ec             	mov    %eax,-0x14(%ebp)
    7051:	a1 48 e8 04 00       	mov    0x4e848,%eax
    7056:	89 44 24 04          	mov    %eax,0x4(%esp)
    705a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    705d:	89 04 24             	mov    %eax,(%esp)
    7060:	e8 70 c4 ff ff       	call   34d5 <va2la>
    7065:	89 c3                	mov    %eax,%ebx
    7067:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    706d:	89 44 24 04          	mov    %eax,0x4(%esp)
    7071:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    7078:	e8 58 c4 ff ff       	call   34d5 <va2la>
    707d:	8b 55 ec             	mov    -0x14(%ebp),%edx
    7080:	89 54 24 08          	mov    %edx,0x8(%esp)
    7084:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    7088:	89 04 24             	mov    %eax,(%esp)
    708b:	e8 60 90 00 00       	call   100f0 <memcpy>
    7090:	8b 45 f4             	mov    -0xc(%ebp),%eax
    7093:	89 44 24 04          	mov    %eax,0x4(%esp)
    7097:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    709d:	89 04 24             	mov    %eax,(%esp)
    70a0:	e8 d6 fe ff ff       	call   6f7b <create_dir>
    70a5:	89 45 e8             	mov    %eax,-0x18(%ebp)
    70a8:	b8 00 00 00 00       	mov    $0x0,%eax
    70ad:	81 c4 a4 00 00 00    	add    $0xa4,%esp
    70b3:	5b                   	pop    %ebx
    70b4:	5d                   	pop    %ebp
    70b5:	c3                   	ret    

000070b6 <do_close>:
    70b6:	55                   	push   %ebp
    70b7:	89 e5                	mov    %esp,%ebp
    70b9:	83 ec 28             	sub    $0x28,%esp
    70bc:	a1 28 e8 04 00       	mov    0x4e828,%eax
    70c1:	89 45 f4             	mov    %eax,-0xc(%ebp)
    70c4:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    70c9:	8b 55 f4             	mov    -0xc(%ebp),%edx
    70cc:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    70d2:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    70d6:	8b 40 0c             	mov    0xc(%eax),%eax
    70d9:	89 04 24             	mov    %eax,(%esp)
    70dc:	e8 b0 f6 ff ff       	call   6791 <put_inode>
    70e1:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    70e6:	8b 55 f4             	mov    -0xc(%ebp),%edx
    70e9:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    70ef:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    70f3:	8b 50 08             	mov    0x8(%eax),%edx
    70f6:	83 ea 01             	sub    $0x1,%edx
    70f9:	89 50 08             	mov    %edx,0x8(%eax)
    70fc:	8b 40 08             	mov    0x8(%eax),%eax
    70ff:	85 c0                	test   %eax,%eax
    7101:	75 19                	jne    711c <do_close+0x66>
    7103:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7108:	8b 55 f4             	mov    -0xc(%ebp),%edx
    710b:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7111:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7115:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    711c:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7121:	8b 55 f4             	mov    -0xc(%ebp),%edx
    7124:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    712a:	c7 44 90 06 00 00 00 	movl   $0x0,0x6(%eax,%edx,4)
    7131:	00 
    7132:	b8 00 00 00 00       	mov    $0x0,%eax
    7137:	c9                   	leave  
    7138:	c3                   	ret    

00007139 <do_lseek>:
    7139:	55                   	push   %ebp
    713a:	89 e5                	mov    %esp,%ebp
    713c:	83 ec 20             	sub    $0x20,%esp
    713f:	a1 28 e8 04 00       	mov    0x4e828,%eax
    7144:	89 45 f8             	mov    %eax,-0x8(%ebp)
    7147:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    714c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    714f:	a1 30 e8 04 00       	mov    0x4e830,%eax
    7154:	89 45 f0             	mov    %eax,-0x10(%ebp)
    7157:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    715c:	8b 55 f8             	mov    -0x8(%ebp),%edx
    715f:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7165:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7169:	8b 40 04             	mov    0x4(%eax),%eax
    716c:	89 45 fc             	mov    %eax,-0x4(%ebp)
    716f:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7174:	8b 55 f8             	mov    -0x8(%ebp),%edx
    7177:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    717d:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7181:	8b 40 0c             	mov    0xc(%eax),%eax
    7184:	8b 40 04             	mov    0x4(%eax),%eax
    7187:	89 45 ec             	mov    %eax,-0x14(%ebp)
    718a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    718d:	83 f8 02             	cmp    $0x2,%eax
    7190:	74 12                	je     71a4 <do_lseek+0x6b>
    7192:	83 f8 03             	cmp    $0x3,%eax
    7195:	74 15                	je     71ac <do_lseek+0x73>
    7197:	83 f8 01             	cmp    $0x1,%eax
    719a:	75 1e                	jne    71ba <do_lseek+0x81>
    719c:	8b 45 f4             	mov    -0xc(%ebp),%eax
    719f:	89 45 fc             	mov    %eax,-0x4(%ebp)
    71a2:	eb 1d                	jmp    71c1 <do_lseek+0x88>
    71a4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    71a7:	01 45 fc             	add    %eax,-0x4(%ebp)
    71aa:	eb 15                	jmp    71c1 <do_lseek+0x88>
    71ac:	8b 45 f4             	mov    -0xc(%ebp),%eax
    71af:	8b 55 ec             	mov    -0x14(%ebp),%edx
    71b2:	8d 04 02             	lea    (%edx,%eax,1),%eax
    71b5:	89 45 fc             	mov    %eax,-0x4(%ebp)
    71b8:	eb 07                	jmp    71c1 <do_lseek+0x88>
    71ba:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    71bf:	eb 30                	jmp    71f1 <do_lseek+0xb8>
    71c1:	8b 45 fc             	mov    -0x4(%ebp),%eax
    71c4:	3b 45 ec             	cmp    -0x14(%ebp),%eax
    71c7:	7f 06                	jg     71cf <do_lseek+0x96>
    71c9:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
    71cd:	79 07                	jns    71d6 <do_lseek+0x9d>
    71cf:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    71d4:	eb 1b                	jmp    71f1 <do_lseek+0xb8>
    71d6:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    71db:	8b 55 f8             	mov    -0x8(%ebp),%edx
    71de:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    71e4:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    71e8:	8b 55 fc             	mov    -0x4(%ebp),%edx
    71eb:	89 50 04             	mov    %edx,0x4(%eax)
    71ee:	8b 45 fc             	mov    -0x4(%ebp),%eax
    71f1:	c9                   	leave  
    71f2:	c3                   	ret    

000071f3 <do_chdir>:
    71f3:	55                   	push   %ebp
    71f4:	89 e5                	mov    %esp,%ebp
    71f6:	83 ec 28             	sub    $0x28,%esp
    71f9:	a1 48 e8 04 00       	mov    0x4e848,%eax
    71fe:	89 45 f4             	mov    %eax,-0xc(%ebp)
    7201:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    7208:	8d 45 e8             	lea    -0x18(%ebp),%eax
    720b:	89 44 24 08          	mov    %eax,0x8(%esp)
    720f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    7212:	89 44 24 04          	mov    %eax,0x4(%esp)
    7216:	8b 45 f0             	mov    -0x10(%ebp),%eax
    7219:	89 04 24             	mov    %eax,(%esp)
    721c:	e8 76 41 00 00       	call   b397 <strip_path>
    7221:	89 45 ec             	mov    %eax,-0x14(%ebp)
    7224:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    7228:	74 07                	je     7231 <do_chdir+0x3e>
    722a:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
    722f:	eb 44                	jmp    7275 <do_chdir+0x82>
    7231:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7234:	8b 00                	mov    (%eax),%eax
    7236:	3d 00 40 00 00       	cmp    $0x4000,%eax
    723b:	74 12                	je     724f <do_chdir+0x5c>
    723d:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7240:	89 04 24             	mov    %eax,(%esp)
    7243:	e8 49 f5 ff ff       	call   6791 <put_inode>
    7248:	b8 ec ff ff ff       	mov    $0xffffffec,%eax
    724d:	eb 26                	jmp    7275 <do_chdir+0x82>
    724f:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    7254:	8b 80 2a 02 00 00    	mov    0x22a(%eax),%eax
    725a:	89 04 24             	mov    %eax,(%esp)
    725d:	e8 2f f5 ff ff       	call   6791 <put_inode>
    7262:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    7267:	8b 55 e8             	mov    -0x18(%ebp),%edx
    726a:	89 90 2a 02 00 00    	mov    %edx,0x22a(%eax)
    7270:	b8 00 00 00 00       	mov    $0x0,%eax
    7275:	c9                   	leave  
    7276:	c3                   	ret    

00007277 <do_chroot>:
    7277:	55                   	push   %ebp
    7278:	89 e5                	mov    %esp,%ebp
    727a:	83 ec 28             	sub    $0x28,%esp
    727d:	a1 48 e8 04 00       	mov    0x4e848,%eax
    7282:	89 45 f4             	mov    %eax,-0xc(%ebp)
    7285:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    728c:	8d 45 e8             	lea    -0x18(%ebp),%eax
    728f:	89 44 24 08          	mov    %eax,0x8(%esp)
    7293:	8b 45 f4             	mov    -0xc(%ebp),%eax
    7296:	89 44 24 04          	mov    %eax,0x4(%esp)
    729a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    729d:	89 04 24             	mov    %eax,(%esp)
    72a0:	e8 f2 40 00 00       	call   b397 <strip_path>
    72a5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    72a8:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    72ac:	74 07                	je     72b5 <do_chroot+0x3e>
    72ae:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
    72b3:	eb 44                	jmp    72f9 <do_chroot+0x82>
    72b5:	8b 45 e8             	mov    -0x18(%ebp),%eax
    72b8:	8b 00                	mov    (%eax),%eax
    72ba:	3d 00 40 00 00       	cmp    $0x4000,%eax
    72bf:	74 12                	je     72d3 <do_chroot+0x5c>
    72c1:	8b 45 e8             	mov    -0x18(%ebp),%eax
    72c4:	89 04 24             	mov    %eax,(%esp)
    72c7:	e8 c5 f4 ff ff       	call   6791 <put_inode>
    72cc:	b8 ec ff ff ff       	mov    $0xffffffec,%eax
    72d1:	eb 26                	jmp    72f9 <do_chroot+0x82>
    72d3:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    72d8:	8b 80 2a 02 00 00    	mov    0x22a(%eax),%eax
    72de:	89 04 24             	mov    %eax,(%esp)
    72e1:	e8 ab f4 ff ff       	call   6791 <put_inode>
    72e6:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    72eb:	8b 55 e8             	mov    -0x18(%ebp),%edx
    72ee:	89 90 2e 02 00 00    	mov    %edx,0x22e(%eax)
    72f4:	b8 00 00 00 00       	mov    $0x0,%eax
    72f9:	c9                   	leave  
    72fa:	c3                   	ret    

000072fb <alloc_imap_bit>:
    72fb:	55                   	push   %ebp
    72fc:	89 e5                	mov    %esp,%ebp
    72fe:	57                   	push   %edi
    72ff:	56                   	push   %esi
    7300:	53                   	push   %ebx
    7301:	83 ec 4c             	sub    $0x4c,%esp
    7304:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    730b:	c7 45 d8 02 00 00 00 	movl   $0x2,-0x28(%ebp)
    7312:	8b 45 08             	mov    0x8(%ebp),%eax
    7315:	89 04 24             	mov    %eax,(%esp)
    7318:	e8 b0 f2 ff ff       	call   65cd <get_super_block>
    731d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    7320:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
    7327:	8b 55 d0             	mov    -0x30(%ebp),%edx
    732a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    732d:	8b 40 0c             	mov    0xc(%eax),%eax
    7330:	39 c2                	cmp    %eax,%edx
    7332:	0f 83 3b 01 00 00    	jae    7473 <alloc_imap_bit+0x178>
    7338:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    733e:	8b 45 d0             	mov    -0x30(%ebp),%eax
    7341:	8b 55 d8             	mov    -0x28(%ebp),%edx
    7344:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7347:	c1 e0 09             	shl    $0x9,%eax
    734a:	89 c2                	mov    %eax,%edx
    734c:	c1 fa 1f             	sar    $0x1f,%edx
    734f:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    7353:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    735a:	00 
    735b:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    7362:	00 
    7363:	89 44 24 08          	mov    %eax,0x8(%esp)
    7367:	89 54 24 0c          	mov    %edx,0xc(%esp)
    736b:	8b 45 08             	mov    0x8(%ebp),%eax
    736e:	89 44 24 04          	mov    %eax,0x4(%esp)
    7372:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    7379:	e8 30 f0 ff ff       	call   63ae <rw_sector>
    737e:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    7385:	e9 d7 00 00 00       	jmp    7461 <alloc_imap_bit+0x166>
    738a:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    7390:	8b 45 e0             	mov    -0x20(%ebp),%eax
    7393:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7396:	0f b6 00             	movzbl (%eax),%eax
    7399:	3c ff                	cmp    $0xff,%al
    739b:	75 09                	jne    73a6 <alloc_imap_bit+0xab>
    739d:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    73a1:	e9 bb 00 00 00       	jmp    7461 <alloc_imap_bit+0x166>
    73a6:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    73ad:	eb 04                	jmp    73b3 <alloc_imap_bit+0xb8>
    73af:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    73b3:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    73b9:	8b 45 e0             	mov    -0x20(%ebp),%eax
    73bc:	8d 04 02             	lea    (%edx,%eax,1),%eax
    73bf:	0f b6 00             	movzbl (%eax),%eax
    73c2:	0f b6 d0             	movzbl %al,%edx
    73c5:	8b 45 dc             	mov    -0x24(%ebp),%eax
    73c8:	89 d3                	mov    %edx,%ebx
    73ca:	89 c1                	mov    %eax,%ecx
    73cc:	d3 fb                	sar    %cl,%ebx
    73ce:	89 d8                	mov    %ebx,%eax
    73d0:	83 e0 01             	and    $0x1,%eax
    73d3:	84 c0                	test   %al,%al
    73d5:	75 d8                	jne    73af <alloc_imap_bit+0xb4>
    73d7:	8b 45 d0             	mov    -0x30(%ebp),%eax
    73da:	c1 e0 09             	shl    $0x9,%eax
    73dd:	03 45 e0             	add    -0x20(%ebp),%eax
    73e0:	c1 e0 03             	shl    $0x3,%eax
    73e3:	03 45 dc             	add    -0x24(%ebp),%eax
    73e6:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    73e9:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    73ef:	8b 45 e0             	mov    -0x20(%ebp),%eax
    73f2:	01 c2                	add    %eax,%edx
    73f4:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    73fa:	8b 45 e0             	mov    -0x20(%ebp),%eax
    73fd:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    7400:	0f b6 00             	movzbl (%eax),%eax
    7403:	89 c3                	mov    %eax,%ebx
    7405:	8b 45 dc             	mov    -0x24(%ebp),%eax
    7408:	be 01 00 00 00       	mov    $0x1,%esi
    740d:	89 f7                	mov    %esi,%edi
    740f:	89 c1                	mov    %eax,%ecx
    7411:	d3 e7                	shl    %cl,%edi
    7413:	89 f8                	mov    %edi,%eax
    7415:	09 d8                	or     %ebx,%eax
    7417:	88 02                	mov    %al,(%edx)
    7419:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    741f:	8b 45 d0             	mov    -0x30(%ebp),%eax
    7422:	8b 55 d8             	mov    -0x28(%ebp),%edx
    7425:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7428:	c1 e0 09             	shl    $0x9,%eax
    742b:	89 c2                	mov    %eax,%edx
    742d:	c1 fa 1f             	sar    $0x1f,%edx
    7430:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    7434:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    743b:	00 
    743c:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    7443:	00 
    7444:	89 44 24 08          	mov    %eax,0x8(%esp)
    7448:	89 54 24 0c          	mov    %edx,0xc(%esp)
    744c:	8b 45 08             	mov    0x8(%ebp),%eax
    744f:	89 44 24 04          	mov    %eax,0x4(%esp)
    7453:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    745a:	e8 4f ef ff ff       	call   63ae <rw_sector>
    745f:	eb 0d                	jmp    746e <alloc_imap_bit+0x173>
    7461:	81 7d e0 ff 01 00 00 	cmpl   $0x1ff,-0x20(%ebp)
    7468:	0f 8e 1c ff ff ff    	jle    738a <alloc_imap_bit+0x8f>
    746e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    7471:	eb 11                	jmp    7484 <alloc_imap_bit+0x189>
    7473:	c7 04 24 50 16 01 00 	movl   $0x11650,(%esp)
    747a:	e8 b8 aa ff ff       	call   1f37 <panic>
    747f:	b8 00 00 00 00       	mov    $0x0,%eax
    7484:	83 c4 4c             	add    $0x4c,%esp
    7487:	5b                   	pop    %ebx
    7488:	5e                   	pop    %esi
    7489:	5f                   	pop    %edi
    748a:	5d                   	pop    %ebp
    748b:	c3                   	ret    

0000748c <alloc_smap_bit>:
    748c:	55                   	push   %ebp
    748d:	89 e5                	mov    %esp,%ebp
    748f:	57                   	push   %edi
    7490:	56                   	push   %esi
    7491:	53                   	push   %ebx
    7492:	83 ec 4c             	sub    $0x4c,%esp
    7495:	8b 45 08             	mov    0x8(%ebp),%eax
    7498:	89 04 24             	mov    %eax,(%esp)
    749b:	e8 2d f1 ff ff       	call   65cd <get_super_block>
    74a0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    74a3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    74a6:	8b 40 0c             	mov    0xc(%eax),%eax
    74a9:	83 c0 02             	add    $0x2,%eax
    74ac:	89 45 d0             	mov    %eax,-0x30(%ebp)
    74af:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
    74b6:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    74bd:	e9 7c 01 00 00       	jmp    763e <alloc_smap_bit+0x1b2>
    74c2:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    74c8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    74cb:	8b 55 d0             	mov    -0x30(%ebp),%edx
    74ce:	8d 04 02             	lea    (%edx,%eax,1),%eax
    74d1:	c1 e0 09             	shl    $0x9,%eax
    74d4:	89 c2                	mov    %eax,%edx
    74d6:	c1 fa 1f             	sar    $0x1f,%edx
    74d9:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    74dd:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    74e4:	00 
    74e5:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    74ec:	00 
    74ed:	89 44 24 08          	mov    %eax,0x8(%esp)
    74f1:	89 54 24 0c          	mov    %edx,0xc(%esp)
    74f5:	8b 45 08             	mov    0x8(%ebp),%eax
    74f8:	89 44 24 04          	mov    %eax,0x4(%esp)
    74fc:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    7503:	e8 a6 ee ff ff       	call   63ae <rw_sector>
    7508:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    750f:	e9 c1 00 00 00       	jmp    75d5 <alloc_smap_bit+0x149>
    7514:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    751b:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
    751f:	0f 85 a3 00 00 00    	jne    75c8 <alloc_smap_bit+0x13c>
    7525:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    752b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    752e:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7531:	0f b6 00             	movzbl (%eax),%eax
    7534:	3c ff                	cmp    $0xff,%al
    7536:	75 0b                	jne    7543 <alloc_smap_bit+0xb7>
    7538:	e9 94 00 00 00       	jmp    75d1 <alloc_smap_bit+0x145>
    753d:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    7541:	eb 01                	jmp    7544 <alloc_smap_bit+0xb8>
    7543:	90                   	nop
    7544:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    754a:	8b 45 e0             	mov    -0x20(%ebp),%eax
    754d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7550:	0f b6 00             	movzbl (%eax),%eax
    7553:	0f b6 d0             	movzbl %al,%edx
    7556:	8b 45 dc             	mov    -0x24(%ebp),%eax
    7559:	89 d3                	mov    %edx,%ebx
    755b:	89 c1                	mov    %eax,%ecx
    755d:	d3 fb                	sar    %cl,%ebx
    755f:	89 d8                	mov    %ebx,%eax
    7561:	83 e0 01             	and    $0x1,%eax
    7564:	84 c0                	test   %al,%al
    7566:	75 d5                	jne    753d <alloc_smap_bit+0xb1>
    7568:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    756b:	c1 e0 09             	shl    $0x9,%eax
    756e:	03 45 e0             	add    -0x20(%ebp),%eax
    7571:	c1 e0 03             	shl    $0x3,%eax
    7574:	03 45 dc             	add    -0x24(%ebp),%eax
    7577:	89 c2                	mov    %eax,%edx
    7579:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    757c:	8b 40 14             	mov    0x14(%eax),%eax
    757f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7582:	83 e8 01             	sub    $0x1,%eax
    7585:	89 45 d8             	mov    %eax,-0x28(%ebp)
    7588:	eb 3e                	jmp    75c8 <alloc_smap_bit+0x13c>
    758a:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    7590:	8b 45 e0             	mov    -0x20(%ebp),%eax
    7593:	01 c2                	add    %eax,%edx
    7595:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    759b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    759e:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    75a1:	0f b6 00             	movzbl (%eax),%eax
    75a4:	89 c3                	mov    %eax,%ebx
    75a6:	8b 45 dc             	mov    -0x24(%ebp),%eax
    75a9:	be 01 00 00 00       	mov    $0x1,%esi
    75ae:	89 f7                	mov    %esi,%edi
    75b0:	89 c1                	mov    %eax,%ecx
    75b2:	d3 e7                	shl    %cl,%edi
    75b4:	89 f8                	mov    %edi,%eax
    75b6:	09 d8                	or     %ebx,%eax
    75b8:	88 02                	mov    %al,(%edx)
    75ba:	83 6d 0c 01          	subl   $0x1,0xc(%ebp)
    75be:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    75c2:	74 0c                	je     75d0 <alloc_smap_bit+0x144>
    75c4:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    75c8:	83 7d dc 07          	cmpl   $0x7,-0x24(%ebp)
    75cc:	7e bc                	jle    758a <alloc_smap_bit+0xfe>
    75ce:	eb 01                	jmp    75d1 <alloc_smap_bit+0x145>
    75d0:	90                   	nop
    75d1:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    75d5:	81 7d e0 ff 01 00 00 	cmpl   $0x1ff,-0x20(%ebp)
    75dc:	7f 0a                	jg     75e8 <alloc_smap_bit+0x15c>
    75de:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    75e2:	0f 8f 2c ff ff ff    	jg     7514 <alloc_smap_bit+0x88>
    75e8:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
    75ec:	74 46                	je     7634 <alloc_smap_bit+0x1a8>
    75ee:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    75f4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    75f7:	8b 55 d0             	mov    -0x30(%ebp),%edx
    75fa:	8d 04 02             	lea    (%edx,%eax,1),%eax
    75fd:	c1 e0 09             	shl    $0x9,%eax
    7600:	89 c2                	mov    %eax,%edx
    7602:	c1 fa 1f             	sar    $0x1f,%edx
    7605:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    7609:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    7610:	00 
    7611:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    7618:	00 
    7619:	89 44 24 08          	mov    %eax,0x8(%esp)
    761d:	89 54 24 0c          	mov    %edx,0xc(%esp)
    7621:	8b 45 08             	mov    0x8(%ebp),%eax
    7624:	89 44 24 04          	mov    %eax,0x4(%esp)
    7628:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    762f:	e8 7a ed ff ff       	call   63ae <rw_sector>
    7634:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    7638:	74 17                	je     7651 <alloc_smap_bit+0x1c5>
    763a:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    763e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    7641:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    7644:	8b 40 10             	mov    0x10(%eax),%eax
    7647:	39 c2                	cmp    %eax,%edx
    7649:	0f 82 73 fe ff ff    	jb     74c2 <alloc_smap_bit+0x36>
    764f:	eb 01                	jmp    7652 <alloc_smap_bit+0x1c6>
    7651:	90                   	nop
    7652:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    7656:	74 24                	je     767c <alloc_smap_bit+0x1f0>
    7658:	c7 44 24 0c cd 01 00 	movl   $0x1cd,0xc(%esp)
    765f:	00 
    7660:	c7 44 24 08 24 15 01 	movl   $0x11524,0x8(%esp)
    7667:	00 
    7668:	c7 44 24 04 24 15 01 	movl   $0x11524,0x4(%esp)
    766f:	00 
    7670:	c7 04 24 6d 16 01 00 	movl   $0x1166d,(%esp)
    7677:	e8 4e 8d 00 00       	call   103ca <assertion_failure>
    767c:	8b 45 d8             	mov    -0x28(%ebp),%eax
    767f:	83 c4 4c             	add    $0x4c,%esp
    7682:	5b                   	pop    %ebx
    7683:	5e                   	pop    %esi
    7684:	5f                   	pop    %edi
    7685:	5d                   	pop    %ebp
    7686:	c3                   	ret    

00007687 <new_inode>:
    7687:	55                   	push   %ebp
    7688:	89 e5                	mov    %esp,%ebp
    768a:	83 ec 28             	sub    $0x28,%esp
    768d:	8b 45 0c             	mov    0xc(%ebp),%eax
    7690:	89 44 24 04          	mov    %eax,0x4(%esp)
    7694:	8b 45 08             	mov    0x8(%ebp),%eax
    7697:	89 04 24             	mov    %eax,(%esp)
    769a:	e8 75 ef ff ff       	call   6614 <get_inode>
    769f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    76a2:	8b 55 14             	mov    0x14(%ebp),%edx
    76a5:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76a8:	89 10                	mov    %edx,(%eax)
    76aa:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76ad:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    76b4:	8b 55 10             	mov    0x10(%ebp),%edx
    76b7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76ba:	89 50 08             	mov    %edx,0x8(%eax)
    76bd:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76c0:	c7 40 0c 00 08 00 00 	movl   $0x800,0xc(%eax)
    76c7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76ca:	8b 55 08             	mov    0x8(%ebp),%edx
    76cd:	89 50 20             	mov    %edx,0x20(%eax)
    76d0:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76d3:	c7 40 24 01 00 00 00 	movl   $0x1,0x24(%eax)
    76da:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76dd:	8b 55 0c             	mov    0xc(%ebp),%edx
    76e0:	89 50 28             	mov    %edx,0x28(%eax)
    76e3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76e6:	89 04 24             	mov    %eax,(%esp)
    76e9:	e8 e8 f0 ff ff       	call   67d6 <sync_inode>
    76ee:	8b 45 f4             	mov    -0xc(%ebp),%eax
    76f1:	c9                   	leave  
    76f2:	c3                   	ret    

000076f3 <new_dir_entry>:
    76f3:	55                   	push   %ebp
    76f4:	89 e5                	mov    %esp,%ebp
    76f6:	53                   	push   %ebx
    76f7:	83 ec 44             	sub    $0x44,%esp
    76fa:	8b 45 08             	mov    0x8(%ebp),%eax
    76fd:	8b 40 08             	mov    0x8(%eax),%eax
    7700:	89 45 e0             	mov    %eax,-0x20(%ebp)
    7703:	8b 45 08             	mov    0x8(%ebp),%eax
    7706:	8b 40 04             	mov    0x4(%eax),%eax
    7709:	05 00 02 00 00       	add    $0x200,%eax
    770e:	c1 e8 09             	shr    $0x9,%eax
    7711:	89 45 dc             	mov    %eax,-0x24(%ebp)
    7714:	8b 45 08             	mov    0x8(%ebp),%eax
    7717:	8b 40 04             	mov    0x4(%eax),%eax
    771a:	c1 e8 04             	shr    $0x4,%eax
    771d:	89 45 d8             	mov    %eax,-0x28(%ebp)
    7720:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    7727:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    772e:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
    7735:	e9 9c 00 00 00       	jmp    77d6 <new_dir_entry+0xe3>
    773a:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    7740:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7743:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7746:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7749:	c1 e0 09             	shl    $0x9,%eax
    774c:	89 c2                	mov    %eax,%edx
    774e:	c1 fa 1f             	sar    $0x1f,%edx
    7751:	8b 4d 08             	mov    0x8(%ebp),%ecx
    7754:	8b 49 20             	mov    0x20(%ecx),%ecx
    7757:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    775b:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    7762:	00 
    7763:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    776a:	00 
    776b:	89 44 24 08          	mov    %eax,0x8(%esp)
    776f:	89 54 24 0c          	mov    %edx,0xc(%esp)
    7773:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    7777:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    777e:	e8 2b ec ff ff       	call   63ae <rw_sector>
    7783:	a1 e8 32 01 00       	mov    0x132e8,%eax
    7788:	89 45 f0             	mov    %eax,-0x10(%ebp)
    778b:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    7792:	eb 25                	jmp    77b9 <new_dir_entry+0xc6>
    7794:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    7798:	8b 45 f4             	mov    -0xc(%ebp),%eax
    779b:	3b 45 d8             	cmp    -0x28(%ebp),%eax
    779e:	7f 23                	jg     77c3 <new_dir_entry+0xd0>
    77a0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    77a3:	8b 00                	mov    (%eax),%eax
    77a5:	85 c0                	test   %eax,%eax
    77a7:	75 08                	jne    77b1 <new_dir_entry+0xbe>
    77a9:	8b 45 f0             	mov    -0x10(%ebp),%eax
    77ac:	89 45 ec             	mov    %eax,-0x14(%ebp)
    77af:	eb 13                	jmp    77c4 <new_dir_entry+0xd1>
    77b1:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    77b5:	83 45 f0 10          	addl   $0x10,-0x10(%ebp)
    77b9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    77bc:	83 f8 1f             	cmp    $0x1f,%eax
    77bf:	76 d3                	jbe    7794 <new_dir_entry+0xa1>
    77c1:	eb 01                	jmp    77c4 <new_dir_entry+0xd1>
    77c3:	90                   	nop
    77c4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    77c7:	3b 45 d8             	cmp    -0x28(%ebp),%eax
    77ca:	7f 16                	jg     77e2 <new_dir_entry+0xef>
    77cc:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    77d0:	75 10                	jne    77e2 <new_dir_entry+0xef>
    77d2:	83 45 e8 01          	addl   $0x1,-0x18(%ebp)
    77d6:	8b 45 e8             	mov    -0x18(%ebp),%eax
    77d9:	3b 45 dc             	cmp    -0x24(%ebp),%eax
    77dc:	0f 8c 58 ff ff ff    	jl     773a <new_dir_entry+0x47>
    77e2:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    77e6:	75 15                	jne    77fd <new_dir_entry+0x10a>
    77e8:	8b 45 f0             	mov    -0x10(%ebp),%eax
    77eb:	89 45 ec             	mov    %eax,-0x14(%ebp)
    77ee:	8b 45 08             	mov    0x8(%ebp),%eax
    77f1:	8b 40 04             	mov    0x4(%eax),%eax
    77f4:	8d 50 10             	lea    0x10(%eax),%edx
    77f7:	8b 45 08             	mov    0x8(%ebp),%eax
    77fa:	89 50 04             	mov    %edx,0x4(%eax)
    77fd:	8b 45 ec             	mov    -0x14(%ebp),%eax
    7800:	8b 55 0c             	mov    0xc(%ebp),%edx
    7803:	89 10                	mov    %edx,(%eax)
    7805:	8b 45 ec             	mov    -0x14(%ebp),%eax
    7808:	8d 50 04             	lea    0x4(%eax),%edx
    780b:	8b 45 10             	mov    0x10(%ebp),%eax
    780e:	89 44 24 04          	mov    %eax,0x4(%esp)
    7812:	89 14 24             	mov    %edx,(%esp)
    7815:	e8 2c 89 00 00       	call   10146 <strcpy>
    781a:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    7820:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7823:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7826:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7829:	c1 e0 09             	shl    $0x9,%eax
    782c:	89 c2                	mov    %eax,%edx
    782e:	c1 fa 1f             	sar    $0x1f,%edx
    7831:	8b 4d 08             	mov    0x8(%ebp),%ecx
    7834:	8b 49 20             	mov    0x20(%ecx),%ecx
    7837:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    783b:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    7842:	00 
    7843:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    784a:	00 
    784b:	89 44 24 08          	mov    %eax,0x8(%esp)
    784f:	89 54 24 0c          	mov    %edx,0xc(%esp)
    7853:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    7857:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    785e:	e8 4b eb ff ff       	call   63ae <rw_sector>
    7863:	8b 45 08             	mov    0x8(%ebp),%eax
    7866:	89 04 24             	mov    %eax,(%esp)
    7869:	e8 68 ef ff ff       	call   67d6 <sync_inode>
    786e:	83 c4 44             	add    $0x44,%esp
    7871:	5b                   	pop    %ebx
    7872:	5d                   	pop    %ebp
    7873:	c3                   	ret    

00007874 <do_mount>:
    7874:	55                   	push   %ebp
    7875:	89 e5                	mov    %esp,%ebp
    7877:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    787c:	5d                   	pop    %ebp
    787d:	c3                   	ret    

0000787e <do_umount>:
    787e:	55                   	push   %ebp
    787f:	89 e5                	mov    %esp,%ebp
    7881:	b8 da ff ff ff       	mov    $0xffffffda,%eax
    7886:	5d                   	pop    %ebp
    7887:	c3                   	ret    

00007888 <do_stat>:
    7888:	55                   	push   %ebp
    7889:	89 e5                	mov    %esp,%ebp
    788b:	53                   	push   %ebx
    788c:	81 ec 44 01 00 00    	sub    $0x144,%esp
    7892:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    7897:	89 45 f4             	mov    %eax,-0xc(%ebp)
    789a:	a1 20 e8 04 00       	mov    0x4e820,%eax
    789f:	89 45 f0             	mov    %eax,-0x10(%ebp)
    78a2:	83 7d f4 7f          	cmpl   $0x7f,-0xc(%ebp)
    78a6:	7e 24                	jle    78cc <do_stat+0x44>
    78a8:	c7 44 24 0c 23 00 00 	movl   $0x23,0xc(%esp)
    78af:	00 
    78b0:	c7 44 24 08 84 16 01 	movl   $0x11684,0x8(%esp)
    78b7:	00 
    78b8:	c7 44 24 04 84 16 01 	movl   $0x11684,0x4(%esp)
    78bf:	00 
    78c0:	c7 04 24 8b 16 01 00 	movl   $0x1168b,(%esp)
    78c7:	e8 fe 8a 00 00       	call   103ca <assertion_failure>
    78cc:	a1 48 e8 04 00       	mov    0x4e848,%eax
    78d1:	89 44 24 04          	mov    %eax,0x4(%esp)
    78d5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    78d8:	89 04 24             	mov    %eax,(%esp)
    78db:	e8 f5 bb ff ff       	call   34d5 <va2la>
    78e0:	89 c3                	mov    %eax,%ebx
    78e2:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    78e8:	89 44 24 04          	mov    %eax,0x4(%esp)
    78ec:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    78f3:	e8 dd bb ff ff       	call   34d5 <va2la>
    78f8:	8b 55 f4             	mov    -0xc(%ebp),%edx
    78fb:	89 54 24 08          	mov    %edx,0x8(%esp)
    78ff:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    7903:	89 04 24             	mov    %eax,(%esp)
    7906:	e8 e5 87 00 00       	call   100f0 <memcpy>
    790b:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    7911:	03 45 f4             	add    -0xc(%ebp),%eax
    7914:	c6 00 00             	movb   $0x0,(%eax)
    7917:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    791d:	89 04 24             	mov    %eax,(%esp)
    7920:	e8 eb 39 00 00       	call   b310 <search_file>
    7925:	89 45 ec             	mov    %eax,-0x14(%ebp)
    7928:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    792c:	75 20                	jne    794e <do_stat+0xc6>
    792e:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    7934:	89 44 24 04          	mov    %eax,0x4(%esp)
    7938:	c7 04 24 a0 16 01 00 	movl   $0x116a0,(%esp)
    793f:	e8 46 84 00 00       	call   fd8a <printl>
    7944:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    7949:	e9 20 01 00 00       	jmp    7a6e <do_stat+0x1e6>
    794e:	c7 45 e8 00 00 00 00 	movl   $0x0,-0x18(%ebp)
    7955:	8d 85 e4 fe ff ff    	lea    -0x11c(%ebp),%eax
    795b:	89 44 24 08          	mov    %eax,0x8(%esp)
    795f:	8d 85 68 ff ff ff    	lea    -0x98(%ebp),%eax
    7965:	89 44 24 04          	mov    %eax,0x4(%esp)
    7969:	8d 85 e8 fe ff ff    	lea    -0x118(%ebp),%eax
    796f:	89 04 24             	mov    %eax,(%esp)
    7972:	e8 20 3a 00 00       	call   b397 <strip_path>
    7977:	85 c0                	test   %eax,%eax
    7979:	74 24                	je     799f <do_stat+0x117>
    797b:	c7 44 24 0c 38 00 00 	movl   $0x38,0xc(%esp)
    7982:	00 
    7983:	c7 44 24 08 84 16 01 	movl   $0x11684,0x8(%esp)
    798a:	00 
    798b:	c7 44 24 04 84 16 01 	movl   $0x11684,0x4(%esp)
    7992:	00 
    7993:	c7 04 24 d5 16 01 00 	movl   $0x116d5,(%esp)
    799a:	e8 2b 8a 00 00       	call   103ca <assertion_failure>
    799f:	8b 85 e4 fe ff ff    	mov    -0x11c(%ebp),%eax
    79a5:	8b 40 20             	mov    0x20(%eax),%eax
    79a8:	8b 55 ec             	mov    -0x14(%ebp),%edx
    79ab:	89 54 24 04          	mov    %edx,0x4(%esp)
    79af:	89 04 24             	mov    %eax,(%esp)
    79b2:	e8 5d ec ff ff       	call   6614 <get_inode>
    79b7:	89 45 e8             	mov    %eax,-0x18(%ebp)
    79ba:	8b 45 e8             	mov    -0x18(%ebp),%eax
    79bd:	8b 40 20             	mov    0x20(%eax),%eax
    79c0:	89 85 d0 fe ff ff    	mov    %eax,-0x130(%ebp)
    79c6:	8b 45 e8             	mov    -0x18(%ebp),%eax
    79c9:	8b 40 28             	mov    0x28(%eax),%eax
    79cc:	89 85 d4 fe ff ff    	mov    %eax,-0x12c(%ebp)
    79d2:	8b 45 e8             	mov    -0x18(%ebp),%eax
    79d5:	8b 00                	mov    (%eax),%eax
    79d7:	89 85 d8 fe ff ff    	mov    %eax,-0x128(%ebp)
    79dd:	8b 45 e8             	mov    -0x18(%ebp),%eax
    79e0:	8b 00                	mov    (%eax),%eax
    79e2:	25 00 f0 00 00       	and    $0xf000,%eax
    79e7:	3d 00 60 00 00       	cmp    $0x6000,%eax
    79ec:	74 11                	je     79ff <do_stat+0x177>
    79ee:	8b 45 e8             	mov    -0x18(%ebp),%eax
    79f1:	8b 00                	mov    (%eax),%eax
    79f3:	25 00 f0 00 00       	and    $0xf000,%eax
    79f8:	3d 00 20 00 00       	cmp    $0x2000,%eax
    79fd:	75 08                	jne    7a07 <do_stat+0x17f>
    79ff:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7a02:	8b 40 08             	mov    0x8(%eax),%eax
    7a05:	eb 05                	jmp    7a0c <do_stat+0x184>
    7a07:	b8 00 00 00 00       	mov    $0x0,%eax
    7a0c:	89 85 dc fe ff ff    	mov    %eax,-0x124(%ebp)
    7a12:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7a15:	8b 40 04             	mov    0x4(%eax),%eax
    7a18:	89 85 e0 fe ff ff    	mov    %eax,-0x120(%ebp)
    7a1e:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7a21:	89 04 24             	mov    %eax,(%esp)
    7a24:	e8 68 ed ff ff       	call   6791 <put_inode>
    7a29:	8d 85 d0 fe ff ff    	lea    -0x130(%ebp),%eax
    7a2f:	89 44 24 04          	mov    %eax,0x4(%esp)
    7a33:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    7a3a:	e8 96 ba ff ff       	call   34d5 <va2la>
    7a3f:	89 c3                	mov    %eax,%ebx
    7a41:	a1 4c e8 04 00       	mov    0x4e84c,%eax
    7a46:	89 44 24 04          	mov    %eax,0x4(%esp)
    7a4a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    7a4d:	89 04 24             	mov    %eax,(%esp)
    7a50:	e8 80 ba ff ff       	call   34d5 <va2la>
    7a55:	c7 44 24 08 14 00 00 	movl   $0x14,0x8(%esp)
    7a5c:	00 
    7a5d:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    7a61:	89 04 24             	mov    %eax,(%esp)
    7a64:	e8 87 86 00 00       	call   100f0 <memcpy>
    7a69:	b8 00 00 00 00       	mov    $0x0,%eax
    7a6e:	81 c4 44 01 00 00    	add    $0x144,%esp
    7a74:	5b                   	pop    %ebx
    7a75:	5d                   	pop    %ebp
    7a76:	c3                   	ret    
    7a77:	90                   	nop

00007a78 <do_rdwt>:
    7a78:	55                   	push   %ebp
    7a79:	89 e5                	mov    %esp,%ebp
    7a7b:	56                   	push   %esi
    7a7c:	53                   	push   %ebx
    7a7d:	83 ec 70             	sub    $0x70,%esp
    7a80:	a1 28 e8 04 00       	mov    0x4e828,%eax
    7a85:	89 45 e0             	mov    %eax,-0x20(%ebp)
    7a88:	a1 4c e8 04 00       	mov    0x4e84c,%eax
    7a8d:	89 45 dc             	mov    %eax,-0x24(%ebp)
    7a90:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    7a95:	89 45 d8             	mov    %eax,-0x28(%ebp)
    7a98:	a1 20 e8 04 00       	mov    0x4e820,%eax
    7a9d:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    7aa0:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7aa5:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7aa8:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7aae:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7ab2:	3d 60 e8 04 00       	cmp    $0x4e860,%eax
    7ab7:	72 1b                	jb     7ad4 <do_rdwt+0x5c>
    7ab9:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7abe:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7ac1:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7ac7:	8b 54 90 06          	mov    0x6(%eax,%edx,4),%edx
    7acb:	b8 60 ed 04 00       	mov    $0x4ed60,%eax
    7ad0:	39 c2                	cmp    %eax,%edx
    7ad2:	72 24                	jb     7af8 <do_rdwt+0x80>
    7ad4:	c7 44 24 0c 34 00 00 	movl   $0x34,0xc(%esp)
    7adb:	00 
    7adc:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7ae3:	00 
    7ae4:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7aeb:	00 
    7aec:	c7 04 24 e8 16 01 00 	movl   $0x116e8,(%esp)
    7af3:	e8 d2 88 00 00       	call   103ca <assertion_failure>
    7af8:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7afd:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7b00:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7b06:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7b0a:	8b 00                	mov    (%eax),%eax
    7b0c:	83 e0 02             	and    $0x2,%eax
    7b0f:	85 c0                	test   %eax,%eax
    7b11:	75 0a                	jne    7b1d <do_rdwt+0xa5>
    7b13:	b8 00 00 00 00       	mov    $0x0,%eax
    7b18:	e9 a6 04 00 00       	jmp    7fc3 <do_rdwt+0x54b>
    7b1d:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7b22:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7b25:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7b2b:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7b2f:	8b 40 04             	mov    0x4(%eax),%eax
    7b32:	89 45 d0             	mov    %eax,-0x30(%ebp)
    7b35:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7b3a:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7b3d:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7b43:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7b47:	8b 40 0c             	mov    0xc(%eax),%eax
    7b4a:	89 45 cc             	mov    %eax,-0x34(%ebp)
    7b4d:	81 7d cc 80 4b 01 00 	cmpl   $0x14b80,-0x34(%ebp)
    7b54:	72 0a                	jb     7b60 <do_rdwt+0xe8>
    7b56:	b8 80 56 01 00       	mov    $0x15680,%eax
    7b5b:	39 45 cc             	cmp    %eax,-0x34(%ebp)
    7b5e:	72 24                	jb     7b84 <do_rdwt+0x10c>
    7b60:	c7 44 24 0c 3d 00 00 	movl   $0x3d,0xc(%esp)
    7b67:	00 
    7b68:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7b6f:	00 
    7b70:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7b77:	00 
    7b78:	c7 04 24 48 17 01 00 	movl   $0x11748,(%esp)
    7b7f:	e8 46 88 00 00       	call   103ca <assertion_failure>
    7b84:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7b87:	8b 00                	mov    (%eax),%eax
    7b89:	25 00 f0 00 00       	and    $0xf000,%eax
    7b8e:	89 45 c8             	mov    %eax,-0x38(%ebp)
    7b91:	81 7d c8 00 20 00 00 	cmpl   $0x2000,-0x38(%ebp)
    7b98:	0f 85 20 01 00 00    	jne    7cbe <do_rdwt+0x246>
    7b9e:	a1 24 e8 04 00       	mov    0x4e824,%eax
    7ba3:	83 f8 11             	cmp    $0x11,%eax
    7ba6:	75 07                	jne    7baf <do_rdwt+0x137>
    7ba8:	b8 d3 07 00 00       	mov    $0x7d3,%eax
    7bad:	eb 05                	jmp    7bb4 <do_rdwt+0x13c>
    7baf:	b8 d4 07 00 00       	mov    $0x7d4,%eax
    7bb4:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    7bb7:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    7bba:	a3 24 e8 04 00       	mov    %eax,0x4e824
    7bbf:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7bc2:	8b 40 08             	mov    0x8(%eax),%eax
    7bc5:	89 45 c0             	mov    %eax,-0x40(%ebp)
    7bc8:	8b 45 c0             	mov    -0x40(%ebp),%eax
    7bcb:	c1 f8 08             	sar    $0x8,%eax
    7bce:	25 ff 00 00 00       	and    $0xff,%eax
    7bd3:	83 f8 04             	cmp    $0x4,%eax
    7bd6:	74 24                	je     7bfc <do_rdwt+0x184>
    7bd8:	c7 44 24 0c 46 00 00 	movl   $0x46,0xc(%esp)
    7bdf:	00 
    7be0:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7be7:	00 
    7be8:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7bef:	00 
    7bf0:	c7 04 24 7f 17 01 00 	movl   $0x1177f,(%esp)
    7bf7:	e8 ce 87 00 00       	call   103ca <assertion_failure>
    7bfc:	8b 45 c0             	mov    -0x40(%ebp),%eax
    7bff:	25 ff 00 00 00       	and    $0xff,%eax
    7c04:	a3 34 e8 04 00       	mov    %eax,0x4e834
    7c09:	8b 45 dc             	mov    -0x24(%ebp),%eax
    7c0c:	a3 4c e8 04 00       	mov    %eax,0x4e84c
    7c11:	8b 45 d8             	mov    -0x28(%ebp),%eax
    7c14:	a3 2c e8 04 00       	mov    %eax,0x4e82c
    7c19:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    7c1c:	a3 30 e8 04 00       	mov    %eax,0x4e830
    7c21:	8b 45 c0             	mov    -0x40(%ebp),%eax
    7c24:	c1 f8 08             	sar    $0x8,%eax
    7c27:	25 ff 00 00 00       	and    $0xff,%eax
    7c2c:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    7c33:	83 f8 ec             	cmp    $0xffffffec,%eax
    7c36:	75 24                	jne    7c5c <do_rdwt+0x1e4>
    7c38:	c7 44 24 0c 4c 00 00 	movl   $0x4c,0xc(%esp)
    7c3f:	00 
    7c40:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7c47:	00 
    7c48:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7c4f:	00 
    7c50:	c7 04 24 90 17 01 00 	movl   $0x11790,(%esp)
    7c57:	e8 6e 87 00 00       	call   103ca <assertion_failure>
    7c5c:	8b 45 c0             	mov    -0x40(%ebp),%eax
    7c5f:	c1 f8 08             	sar    $0x8,%eax
    7c62:	25 ff 00 00 00       	and    $0xff,%eax
    7c67:	8b 04 85 cd 32 01 00 	mov    0x132cd(,%eax,4),%eax
    7c6e:	c7 44 24 08 20 e8 04 	movl   $0x4e820,0x8(%esp)
    7c75:	00 
    7c76:	89 44 24 04          	mov    %eax,0x4(%esp)
    7c7a:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    7c81:	e8 f2 84 00 00       	call   10178 <send_recv>
    7c86:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    7c8b:	3b 45 d8             	cmp    -0x28(%ebp),%eax
    7c8e:	74 24                	je     7cb4 <do_rdwt+0x23c>
    7c90:	c7 44 24 0c 4e 00 00 	movl   $0x4e,0xc(%esp)
    7c97:	00 
    7c98:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7c9f:	00 
    7ca0:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7ca7:	00 
    7ca8:	c7 04 24 bf 17 01 00 	movl   $0x117bf,(%esp)
    7caf:	e8 16 87 00 00       	call   103ca <assertion_failure>
    7cb4:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    7cb9:	e9 05 03 00 00       	jmp    7fc3 <do_rdwt+0x54b>
    7cbe:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7cc1:	8b 00                	mov    (%eax),%eax
    7cc3:	3d 00 80 00 00       	cmp    $0x8000,%eax
    7cc8:	74 30                	je     7cfa <do_rdwt+0x282>
    7cca:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7ccd:	8b 00                	mov    (%eax),%eax
    7ccf:	3d 00 40 00 00       	cmp    $0x4000,%eax
    7cd4:	74 24                	je     7cfa <do_rdwt+0x282>
    7cd6:	c7 44 24 0c 53 00 00 	movl   $0x53,0xc(%esp)
    7cdd:	00 
    7cde:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7ce5:	00 
    7ce6:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7ced:	00 
    7cee:	c7 04 24 d4 17 01 00 	movl   $0x117d4,(%esp)
    7cf5:	e8 d0 86 00 00       	call   103ca <assertion_failure>
    7cfa:	a1 24 e8 04 00       	mov    0x4e824,%eax
    7cff:	83 f8 11             	cmp    $0x11,%eax
    7d02:	74 2e                	je     7d32 <do_rdwt+0x2ba>
    7d04:	a1 24 e8 04 00       	mov    0x4e824,%eax
    7d09:	83 f8 12             	cmp    $0x12,%eax
    7d0c:	74 24                	je     7d32 <do_rdwt+0x2ba>
    7d0e:	c7 44 24 0c 54 00 00 	movl   $0x54,0xc(%esp)
    7d15:	00 
    7d16:	c7 44 24 08 d8 16 01 	movl   $0x116d8,0x8(%esp)
    7d1d:	00 
    7d1e:	c7 44 24 04 d8 16 01 	movl   $0x116d8,0x4(%esp)
    7d25:	00 
    7d26:	c7 04 24 0c 18 01 00 	movl   $0x1180c,(%esp)
    7d2d:	e8 98 86 00 00       	call   103ca <assertion_failure>
    7d32:	a1 24 e8 04 00       	mov    0x4e824,%eax
    7d37:	83 f8 11             	cmp    $0x11,%eax
    7d3a:	75 19                	jne    7d55 <do_rdwt+0x2dd>
    7d3c:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7d3f:	8b 50 04             	mov    0x4(%eax),%edx
    7d42:	8b 45 d8             	mov    -0x28(%ebp),%eax
    7d45:	8b 4d d0             	mov    -0x30(%ebp),%ecx
    7d48:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    7d4b:	39 c2                	cmp    %eax,%edx
    7d4d:	0f 46 c2             	cmovbe %edx,%eax
    7d50:	89 45 f4             	mov    %eax,-0xc(%ebp)
    7d53:	eb 1c                	jmp    7d71 <do_rdwt+0x2f9>
    7d55:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7d58:	8b 40 0c             	mov    0xc(%eax),%eax
    7d5b:	89 c2                	mov    %eax,%edx
    7d5d:	c1 e2 09             	shl    $0x9,%edx
    7d60:	8b 45 d8             	mov    -0x28(%ebp),%eax
    7d63:	8b 4d d0             	mov    -0x30(%ebp),%ecx
    7d66:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    7d69:	39 c2                	cmp    %eax,%edx
    7d6b:	0f 46 c2             	cmovbe %edx,%eax
    7d6e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    7d71:	8b 45 d0             	mov    -0x30(%ebp),%eax
    7d74:	89 c2                	mov    %eax,%edx
    7d76:	c1 fa 1f             	sar    $0x1f,%edx
    7d79:	c1 ea 17             	shr    $0x17,%edx
    7d7c:	01 d0                	add    %edx,%eax
    7d7e:	25 ff 01 00 00       	and    $0x1ff,%eax
    7d83:	29 d0                	sub    %edx,%eax
    7d85:	89 45 f0             	mov    %eax,-0x10(%ebp)
    7d88:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7d8b:	8b 50 08             	mov    0x8(%eax),%edx
    7d8e:	8b 45 d0             	mov    -0x30(%ebp),%eax
    7d91:	c1 f8 09             	sar    $0x9,%eax
    7d94:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7d97:	89 45 bc             	mov    %eax,-0x44(%ebp)
    7d9a:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7d9d:	8b 50 08             	mov    0x8(%eax),%edx
    7da0:	8b 45 f4             	mov    -0xc(%ebp),%eax
    7da3:	c1 f8 09             	sar    $0x9,%eax
    7da6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7da9:	89 45 b8             	mov    %eax,-0x48(%ebp)
    7dac:	a1 f4 0b 01 00       	mov    0x10bf4,%eax
    7db1:	89 c2                	mov    %eax,%edx
    7db3:	c1 fa 09             	sar    $0x9,%edx
    7db6:	8b 45 bc             	mov    -0x44(%ebp),%eax
    7db9:	8b 4d b8             	mov    -0x48(%ebp),%ecx
    7dbc:	89 cb                	mov    %ecx,%ebx
    7dbe:	29 c3                	sub    %eax,%ebx
    7dc0:	89 d8                	mov    %ebx,%eax
    7dc2:	83 c0 01             	add    $0x1,%eax
    7dc5:	39 c2                	cmp    %eax,%edx
    7dc7:	0f 4e c2             	cmovle %edx,%eax
    7dca:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    7dcd:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    7dd4:	8b 45 d8             	mov    -0x28(%ebp),%eax
    7dd7:	89 45 e8             	mov    %eax,-0x18(%ebp)
    7dda:	8b 45 bc             	mov    -0x44(%ebp),%eax
    7ddd:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    7de0:	e9 86 01 00 00       	jmp    7f6b <do_rdwt+0x4f3>
    7de5:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    7de8:	c1 e0 09             	shl    $0x9,%eax
    7deb:	89 c2                	mov    %eax,%edx
    7ded:	2b 55 f0             	sub    -0x10(%ebp),%edx
    7df0:	8b 45 e8             	mov    -0x18(%ebp),%eax
    7df3:	39 c2                	cmp    %eax,%edx
    7df5:	0f 4e c2             	cmovle %edx,%eax
    7df8:	89 45 b0             	mov    %eax,-0x50(%ebp)
    7dfb:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    7e01:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    7e04:	89 c6                	mov    %eax,%esi
    7e06:	c1 e6 09             	shl    $0x9,%esi
    7e09:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    7e0c:	c1 e0 09             	shl    $0x9,%eax
    7e0f:	89 c2                	mov    %eax,%edx
    7e11:	c1 fa 1f             	sar    $0x1f,%edx
    7e14:	8b 4d cc             	mov    -0x34(%ebp),%ecx
    7e17:	8b 49 20             	mov    0x20(%ecx),%ecx
    7e1a:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    7e1e:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    7e25:	00 
    7e26:	89 74 24 10          	mov    %esi,0x10(%esp)
    7e2a:	89 44 24 08          	mov    %eax,0x8(%esp)
    7e2e:	89 54 24 0c          	mov    %edx,0xc(%esp)
    7e32:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    7e36:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    7e3d:	e8 6c e5 ff ff       	call   63ae <rw_sector>
    7e42:	a1 24 e8 04 00       	mov    0x4e824,%eax
    7e47:	83 f8 11             	cmp    $0x11,%eax
    7e4a:	75 4b                	jne    7e97 <do_rdwt+0x41f>
    7e4c:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    7e52:	8b 45 f0             	mov    -0x10(%ebp),%eax
    7e55:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7e58:	89 44 24 04          	mov    %eax,0x4(%esp)
    7e5c:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    7e63:	e8 6d b6 ff ff       	call   34d5 <va2la>
    7e68:	89 c3                	mov    %eax,%ebx
    7e6a:	8b 45 ec             	mov    -0x14(%ebp),%eax
    7e6d:	03 45 dc             	add    -0x24(%ebp),%eax
    7e70:	89 44 24 04          	mov    %eax,0x4(%esp)
    7e74:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    7e77:	89 04 24             	mov    %eax,(%esp)
    7e7a:	e8 56 b6 ff ff       	call   34d5 <va2la>
    7e7f:	8b 55 b0             	mov    -0x50(%ebp),%edx
    7e82:	89 54 24 08          	mov    %edx,0x8(%esp)
    7e86:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    7e8a:	89 04 24             	mov    %eax,(%esp)
    7e8d:	e8 5e 82 00 00       	call   100f0 <memcpy>
    7e92:	e9 8d 00 00 00       	jmp    7f24 <do_rdwt+0x4ac>
    7e97:	8b 45 ec             	mov    -0x14(%ebp),%eax
    7e9a:	03 45 dc             	add    -0x24(%ebp),%eax
    7e9d:	89 44 24 04          	mov    %eax,0x4(%esp)
    7ea1:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    7ea4:	89 04 24             	mov    %eax,(%esp)
    7ea7:	e8 29 b6 ff ff       	call   34d5 <va2la>
    7eac:	89 c3                	mov    %eax,%ebx
    7eae:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    7eb4:	8b 45 f0             	mov    -0x10(%ebp),%eax
    7eb7:	8d 04 02             	lea    (%edx,%eax,1),%eax
    7eba:	89 44 24 04          	mov    %eax,0x4(%esp)
    7ebe:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    7ec5:	e8 0b b6 ff ff       	call   34d5 <va2la>
    7eca:	8b 55 b0             	mov    -0x50(%ebp),%edx
    7ecd:	89 54 24 08          	mov    %edx,0x8(%esp)
    7ed1:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    7ed5:	89 04 24             	mov    %eax,(%esp)
    7ed8:	e8 13 82 00 00       	call   100f0 <memcpy>
    7edd:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    7ee3:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    7ee6:	89 c6                	mov    %eax,%esi
    7ee8:	c1 e6 09             	shl    $0x9,%esi
    7eeb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    7eee:	c1 e0 09             	shl    $0x9,%eax
    7ef1:	89 c2                	mov    %eax,%edx
    7ef3:	c1 fa 1f             	sar    $0x1f,%edx
    7ef6:	8b 4d cc             	mov    -0x34(%ebp),%ecx
    7ef9:	8b 49 20             	mov    0x20(%ecx),%ecx
    7efc:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    7f00:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    7f07:	00 
    7f08:	89 74 24 10          	mov    %esi,0x10(%esp)
    7f0c:	89 44 24 08          	mov    %eax,0x8(%esp)
    7f10:	89 54 24 0c          	mov    %edx,0xc(%esp)
    7f14:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    7f18:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    7f1f:	e8 8a e4 ff ff       	call   63ae <rw_sector>
    7f24:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    7f2b:	8b 45 b0             	mov    -0x50(%ebp),%eax
    7f2e:	01 45 ec             	add    %eax,-0x14(%ebp)
    7f31:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7f36:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7f39:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7f3f:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7f43:	8b 15 a4 da 04 00    	mov    0x4daa4,%edx
    7f49:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    7f4c:	81 c1 8c 00 00 00    	add    $0x8c,%ecx
    7f52:	8b 54 8a 06          	mov    0x6(%edx,%ecx,4),%edx
    7f56:	8b 52 04             	mov    0x4(%edx),%edx
    7f59:	03 55 b0             	add    -0x50(%ebp),%edx
    7f5c:	89 50 04             	mov    %edx,0x4(%eax)
    7f5f:	8b 45 b0             	mov    -0x50(%ebp),%eax
    7f62:	29 45 e8             	sub    %eax,-0x18(%ebp)
    7f65:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    7f68:	01 45 e4             	add    %eax,-0x1c(%ebp)
    7f6b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    7f6e:	3b 45 b8             	cmp    -0x48(%ebp),%eax
    7f71:	0f 8e 6e fe ff ff    	jle    7de5 <do_rdwt+0x36d>
    7f77:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7f7c:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7f7f:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7f85:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7f89:	8b 40 04             	mov    0x4(%eax),%eax
    7f8c:	89 c2                	mov    %eax,%edx
    7f8e:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7f91:	8b 40 04             	mov    0x4(%eax),%eax
    7f94:	39 c2                	cmp    %eax,%edx
    7f96:	76 28                	jbe    7fc0 <do_rdwt+0x548>
    7f98:	a1 a4 da 04 00       	mov    0x4daa4,%eax
    7f9d:	8b 55 e0             	mov    -0x20(%ebp),%edx
    7fa0:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    7fa6:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    7faa:	8b 40 04             	mov    0x4(%eax),%eax
    7fad:	89 c2                	mov    %eax,%edx
    7faf:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7fb2:	89 50 04             	mov    %edx,0x4(%eax)
    7fb5:	8b 45 cc             	mov    -0x34(%ebp),%eax
    7fb8:	89 04 24             	mov    %eax,(%esp)
    7fbb:	e8 16 e8 ff ff       	call   67d6 <sync_inode>
    7fc0:	8b 45 ec             	mov    -0x14(%ebp),%eax
    7fc3:	83 c4 70             	add    $0x70,%esp
    7fc6:	5b                   	pop    %ebx
    7fc7:	5e                   	pop    %esi
    7fc8:	5d                   	pop    %ebp
    7fc9:	c3                   	ret    
    7fca:	90                   	nop
    7fcb:	90                   	nop

00007fcc <do_unlink>:
    7fcc:	55                   	push   %ebp
    7fcd:	89 e5                	mov    %esp,%ebp
    7fcf:	57                   	push   %edi
    7fd0:	56                   	push   %esi
    7fd1:	53                   	push   %ebx
    7fd2:	81 ec 8c 01 00 00    	sub    $0x18c,%esp
    7fd8:	a1 2c e8 04 00       	mov    0x4e82c,%eax
    7fdd:	89 45 c0             	mov    %eax,-0x40(%ebp)
    7fe0:	a1 20 e8 04 00       	mov    0x4e820,%eax
    7fe5:	89 45 bc             	mov    %eax,-0x44(%ebp)
    7fe8:	83 7d c0 7f          	cmpl   $0x7f,-0x40(%ebp)
    7fec:	7e 24                	jle    8012 <do_unlink+0x46>
    7fee:	c7 44 24 0c 31 00 00 	movl   $0x31,0xc(%esp)
    7ff5:	00 
    7ff6:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    7ffd:	00 
    7ffe:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    8005:	00 
    8006:	c7 04 24 43 18 01 00 	movl   $0x11843,(%esp)
    800d:	e8 b8 83 00 00       	call   103ca <assertion_failure>
    8012:	a1 48 e8 04 00       	mov    0x4e848,%eax
    8017:	89 44 24 04          	mov    %eax,0x4(%esp)
    801b:	8b 45 bc             	mov    -0x44(%ebp),%eax
    801e:	89 04 24             	mov    %eax,(%esp)
    8021:	e8 af b4 ff ff       	call   34d5 <va2la>
    8026:	89 c3                	mov    %eax,%ebx
    8028:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    802e:	89 44 24 04          	mov    %eax,0x4(%esp)
    8032:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    8039:	e8 97 b4 ff ff       	call   34d5 <va2la>
    803e:	8b 55 c0             	mov    -0x40(%ebp),%edx
    8041:	89 54 24 08          	mov    %edx,0x8(%esp)
    8045:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    8049:	89 04 24             	mov    %eax,(%esp)
    804c:	e8 9f 80 00 00       	call   100f0 <memcpy>
    8051:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    8057:	03 45 c0             	add    -0x40(%ebp),%eax
    805a:	c6 00 00             	movb   $0x0,(%eax)
    805d:	c7 44 24 04 57 18 01 	movl   $0x11857,0x4(%esp)
    8064:	00 
    8065:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    806b:	89 04 24             	mov    %eax,(%esp)
    806e:	e8 66 82 00 00       	call   102d9 <strcmp>
    8073:	85 c0                	test   %eax,%eax
    8075:	75 16                	jne    808d <do_unlink+0xc1>
    8077:	c7 04 24 5c 18 01 00 	movl   $0x1185c,(%esp)
    807e:	e8 07 7d 00 00       	call   fd8a <printl>
    8083:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    8088:	e9 85 08 00 00       	jmp    8912 <do_unlink+0x946>
    808d:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    8093:	89 04 24             	mov    %eax,(%esp)
    8096:	e8 75 32 00 00       	call   b310 <search_file>
    809b:	89 45 b8             	mov    %eax,-0x48(%ebp)
    809e:	83 7d b8 00          	cmpl   $0x0,-0x48(%ebp)
    80a2:	75 20                	jne    80c4 <do_unlink+0xf8>
    80a4:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    80aa:	89 44 24 04          	mov    %eax,0x4(%esp)
    80ae:	c7 04 24 8c 18 01 00 	movl   $0x1188c,(%esp)
    80b5:	e8 d0 7c 00 00       	call   fd8a <printl>
    80ba:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    80bf:	e9 4e 08 00 00       	jmp    8912 <do_unlink+0x946>
    80c4:	8d 85 90 fe ff ff    	lea    -0x170(%ebp),%eax
    80ca:	89 44 24 08          	mov    %eax,0x8(%esp)
    80ce:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    80d4:	89 44 24 04          	mov    %eax,0x4(%esp)
    80d8:	8d 85 94 fe ff ff    	lea    -0x16c(%ebp),%eax
    80de:	89 04 24             	mov    %eax,(%esp)
    80e1:	e8 b1 32 00 00       	call   b397 <strip_path>
    80e6:	85 c0                	test   %eax,%eax
    80e8:	74 0a                	je     80f4 <do_unlink+0x128>
    80ea:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    80ef:	e9 1e 08 00 00       	jmp    8912 <do_unlink+0x946>
    80f4:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    80fa:	8b 40 20             	mov    0x20(%eax),%eax
    80fd:	8b 55 b8             	mov    -0x48(%ebp),%edx
    8100:	89 54 24 04          	mov    %edx,0x4(%esp)
    8104:	89 04 24             	mov    %eax,(%esp)
    8107:	e8 08 e5 ff ff       	call   6614 <get_inode>
    810c:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    810f:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8112:	8b 00                	mov    (%eax),%eax
    8114:	3d 00 80 00 00       	cmp    $0x8000,%eax
    8119:	74 20                	je     813b <do_unlink+0x16f>
    811b:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    8121:	89 44 24 04          	mov    %eax,0x4(%esp)
    8125:	c7 04 24 cc 18 01 00 	movl   $0x118cc,(%esp)
    812c:	e8 59 7c 00 00       	call   fd8a <printl>
    8131:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    8136:	e9 d7 07 00 00       	jmp    8912 <do_unlink+0x946>
    813b:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    813e:	8b 40 24             	mov    0x24(%eax),%eax
    8141:	83 f8 01             	cmp    $0x1,%eax
    8144:	7e 2a                	jle    8170 <do_unlink+0x1a4>
    8146:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8149:	8b 40 24             	mov    0x24(%eax),%eax
    814c:	89 44 24 08          	mov    %eax,0x8(%esp)
    8150:	8d 85 14 ff ff ff    	lea    -0xec(%ebp),%eax
    8156:	89 44 24 04          	mov    %eax,0x4(%esp)
    815a:	c7 04 24 0c 19 01 00 	movl   $0x1190c,(%esp)
    8161:	e8 24 7c 00 00       	call   fd8a <printl>
    8166:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    816b:	e9 a2 07 00 00       	jmp    8912 <do_unlink+0x946>
    8170:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8173:	8b 40 20             	mov    0x20(%eax),%eax
    8176:	89 04 24             	mov    %eax,(%esp)
    8179:	e8 4f e4 ff ff       	call   65cd <get_super_block>
    817e:	89 45 b0             	mov    %eax,-0x50(%ebp)
    8181:	8b 45 b8             	mov    -0x48(%ebp),%eax
    8184:	8d 50 07             	lea    0x7(%eax),%edx
    8187:	85 c0                	test   %eax,%eax
    8189:	0f 48 c2             	cmovs  %edx,%eax
    818c:	c1 f8 03             	sar    $0x3,%eax
    818f:	89 45 ac             	mov    %eax,-0x54(%ebp)
    8192:	8b 45 b8             	mov    -0x48(%ebp),%eax
    8195:	89 c2                	mov    %eax,%edx
    8197:	c1 fa 1f             	sar    $0x1f,%edx
    819a:	c1 ea 1d             	shr    $0x1d,%edx
    819d:	01 d0                	add    %edx,%eax
    819f:	83 e0 07             	and    $0x7,%eax
    81a2:	29 d0                	sub    %edx,%eax
    81a4:	89 45 a8             	mov    %eax,-0x58(%ebp)
    81a7:	81 7d ac ff 01 00 00 	cmpl   $0x1ff,-0x54(%ebp)
    81ae:	7e 24                	jle    81d4 <do_unlink+0x208>
    81b0:	c7 44 24 0c 5e 00 00 	movl   $0x5e,0xc(%esp)
    81b7:	00 
    81b8:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    81bf:	00 
    81c0:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    81c7:	00 
    81c8:	c7 04 24 43 19 01 00 	movl   $0x11943,(%esp)
    81cf:	e8 f6 81 00 00       	call   103ca <assertion_failure>
    81d4:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    81da:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    81dd:	8b 40 20             	mov    0x20(%eax),%eax
    81e0:	89 54 24 18          	mov    %edx,0x18(%esp)
    81e4:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    81eb:	00 
    81ec:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    81f3:	00 
    81f4:	c7 44 24 08 00 04 00 	movl   $0x400,0x8(%esp)
    81fb:	00 
    81fc:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    8203:	00 
    8204:	89 44 24 04          	mov    %eax,0x4(%esp)
    8208:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    820f:	e8 9a e1 ff ff       	call   63ae <rw_sector>
    8214:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    821a:	8b 45 ac             	mov    -0x54(%ebp),%eax
    821d:	89 c2                	mov    %eax,%edx
    821f:	c1 fa 1f             	sar    $0x1f,%edx
    8222:	c1 ea 17             	shr    $0x17,%edx
    8225:	01 d0                	add    %edx,%eax
    8227:	25 ff 01 00 00       	and    $0x1ff,%eax
    822c:	29 d0                	sub    %edx,%eax
    822e:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    8231:	0f b6 00             	movzbl (%eax),%eax
    8234:	0f b6 d0             	movzbl %al,%edx
    8237:	8b 45 a8             	mov    -0x58(%ebp),%eax
    823a:	89 d3                	mov    %edx,%ebx
    823c:	89 c1                	mov    %eax,%ecx
    823e:	d3 fb                	sar    %cl,%ebx
    8240:	89 d8                	mov    %ebx,%eax
    8242:	83 e0 01             	and    $0x1,%eax
    8245:	84 c0                	test   %al,%al
    8247:	75 24                	jne    826d <do_unlink+0x2a1>
    8249:	c7 44 24 0c 61 00 00 	movl   $0x61,0xc(%esp)
    8250:	00 
    8251:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    8258:	00 
    8259:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    8260:	00 
    8261:	c7 04 24 5c 19 01 00 	movl   $0x1195c,(%esp)
    8268:	e8 5d 81 00 00       	call   103ca <assertion_failure>
    826d:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    8273:	8b 45 ac             	mov    -0x54(%ebp),%eax
    8276:	89 c2                	mov    %eax,%edx
    8278:	c1 fa 1f             	sar    $0x1f,%edx
    827b:	c1 ea 17             	shr    $0x17,%edx
    827e:	01 d0                	add    %edx,%eax
    8280:	25 ff 01 00 00       	and    $0x1ff,%eax
    8285:	29 d0                	sub    %edx,%eax
    8287:	89 c2                	mov    %eax,%edx
    8289:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    828c:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    8292:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    8295:	0f b6 00             	movzbl (%eax),%eax
    8298:	89 c3                	mov    %eax,%ebx
    829a:	8b 45 a8             	mov    -0x58(%ebp),%eax
    829d:	be 01 00 00 00       	mov    $0x1,%esi
    82a2:	89 f7                	mov    %esi,%edi
    82a4:	89 c1                	mov    %eax,%ecx
    82a6:	d3 e7                	shl    %cl,%edi
    82a8:	89 f8                	mov    %edi,%eax
    82aa:	f7 d0                	not    %eax
    82ac:	21 d8                	and    %ebx,%eax
    82ae:	88 02                	mov    %al,(%edx)
    82b0:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    82b6:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    82b9:	8b 40 20             	mov    0x20(%eax),%eax
    82bc:	89 54 24 18          	mov    %edx,0x18(%esp)
    82c0:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    82c7:	00 
    82c8:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    82cf:	00 
    82d0:	c7 44 24 08 00 04 00 	movl   $0x400,0x8(%esp)
    82d7:	00 
    82d8:	c7 44 24 0c 00 00 00 	movl   $0x0,0xc(%esp)
    82df:	00 
    82e0:	89 44 24 04          	mov    %eax,0x4(%esp)
    82e4:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    82eb:	e8 be e0 ff ff       	call   63ae <rw_sector>
    82f0:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    82f3:	8b 50 08             	mov    0x8(%eax),%edx
    82f6:	8b 45 b0             	mov    -0x50(%ebp),%eax
    82f9:	8b 40 14             	mov    0x14(%eax),%eax
    82fc:	89 d1                	mov    %edx,%ecx
    82fe:	29 c1                	sub    %eax,%ecx
    8300:	89 c8                	mov    %ecx,%eax
    8302:	83 c0 01             	add    $0x1,%eax
    8305:	89 45 a8             	mov    %eax,-0x58(%ebp)
    8308:	8b 45 a8             	mov    -0x58(%ebp),%eax
    830b:	8d 50 07             	lea    0x7(%eax),%edx
    830e:	85 c0                	test   %eax,%eax
    8310:	0f 48 c2             	cmovs  %edx,%eax
    8313:	c1 f8 03             	sar    $0x3,%eax
    8316:	89 45 ac             	mov    %eax,-0x54(%ebp)
    8319:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    831c:	8b 40 0c             	mov    0xc(%eax),%eax
    831f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    8322:	8b 45 a8             	mov    -0x58(%ebp),%eax
    8325:	89 c2                	mov    %eax,%edx
    8327:	c1 fa 1f             	sar    $0x1f,%edx
    832a:	c1 ea 1d             	shr    $0x1d,%edx
    832d:	01 d0                	add    %edx,%eax
    832f:	83 e0 07             	and    $0x7,%eax
    8332:	29 d0                	sub    %edx,%eax
    8334:	83 e8 08             	sub    $0x8,%eax
    8337:	03 45 e4             	add    -0x1c(%ebp),%eax
    833a:	8d 50 07             	lea    0x7(%eax),%edx
    833d:	85 c0                	test   %eax,%eax
    833f:	0f 48 c2             	cmovs  %edx,%eax
    8342:	c1 f8 03             	sar    $0x3,%eax
    8345:	89 45 a4             	mov    %eax,-0x5c(%ebp)
    8348:	8b 45 b0             	mov    -0x50(%ebp),%eax
    834b:	8b 50 0c             	mov    0xc(%eax),%edx
    834e:	8b 45 ac             	mov    -0x54(%ebp),%eax
    8351:	8d 88 ff 01 00 00    	lea    0x1ff(%eax),%ecx
    8357:	85 c0                	test   %eax,%eax
    8359:	0f 48 c1             	cmovs  %ecx,%eax
    835c:	c1 f8 09             	sar    $0x9,%eax
    835f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8362:	83 c0 02             	add    $0x2,%eax
    8365:	89 45 e0             	mov    %eax,-0x20(%ebp)
    8368:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    836e:	8b 45 e0             	mov    -0x20(%ebp),%eax
    8371:	c1 e0 09             	shl    $0x9,%eax
    8374:	89 c2                	mov    %eax,%edx
    8376:	c1 fa 1f             	sar    $0x1f,%edx
    8379:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    837c:	8b 49 20             	mov    0x20(%ecx),%ecx
    837f:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8383:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    838a:	00 
    838b:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8392:	00 
    8393:	89 44 24 08          	mov    %eax,0x8(%esp)
    8397:	89 54 24 0c          	mov    %edx,0xc(%esp)
    839b:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    839f:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    83a6:	e8 03 e0 ff ff       	call   63ae <rw_sector>
    83ab:	8b 45 a8             	mov    -0x58(%ebp),%eax
    83ae:	89 c2                	mov    %eax,%edx
    83b0:	c1 fa 1f             	sar    $0x1f,%edx
    83b3:	c1 ea 1d             	shr    $0x1d,%edx
    83b6:	01 d0                	add    %edx,%eax
    83b8:	83 e0 07             	and    $0x7,%eax
    83bb:	29 d0                	sub    %edx,%eax
    83bd:	89 45 dc             	mov    %eax,-0x24(%ebp)
    83c0:	e9 a4 00 00 00       	jmp    8469 <do_unlink+0x49d>
    83c5:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    83cb:	8b 45 ac             	mov    -0x54(%ebp),%eax
    83ce:	89 c2                	mov    %eax,%edx
    83d0:	c1 fa 1f             	sar    $0x1f,%edx
    83d3:	c1 ea 17             	shr    $0x17,%edx
    83d6:	01 d0                	add    %edx,%eax
    83d8:	25 ff 01 00 00       	and    $0x1ff,%eax
    83dd:	29 d0                	sub    %edx,%eax
    83df:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    83e2:	0f b6 00             	movzbl (%eax),%eax
    83e5:	0f b6 d0             	movzbl %al,%edx
    83e8:	8b 45 dc             	mov    -0x24(%ebp),%eax
    83eb:	89 d3                	mov    %edx,%ebx
    83ed:	89 c1                	mov    %eax,%ecx
    83ef:	d3 fb                	sar    %cl,%ebx
    83f1:	89 d8                	mov    %ebx,%eax
    83f3:	83 e0 01             	and    $0x1,%eax
    83f6:	84 c0                	test   %al,%al
    83f8:	75 24                	jne    841e <do_unlink+0x452>
    83fa:	c7 44 24 0c 82 00 00 	movl   $0x82,0xc(%esp)
    8401:	00 
    8402:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    8409:	00 
    840a:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    8411:	00 
    8412:	c7 04 24 8c 19 01 00 	movl   $0x1198c,(%esp)
    8419:	e8 ac 7f 00 00       	call   103ca <assertion_failure>
    841e:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    8424:	8b 45 ac             	mov    -0x54(%ebp),%eax
    8427:	89 c2                	mov    %eax,%edx
    8429:	c1 fa 1f             	sar    $0x1f,%edx
    842c:	c1 ea 17             	shr    $0x17,%edx
    842f:	01 d0                	add    %edx,%eax
    8431:	25 ff 01 00 00       	and    $0x1ff,%eax
    8436:	29 d0                	sub    %edx,%eax
    8438:	89 c2                	mov    %eax,%edx
    843a:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    843d:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    8443:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    8446:	0f b6 00             	movzbl (%eax),%eax
    8449:	89 c3                	mov    %eax,%ebx
    844b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    844e:	be 01 00 00 00       	mov    $0x1,%esi
    8453:	89 f7                	mov    %esi,%edi
    8455:	89 c1                	mov    %eax,%ecx
    8457:	d3 e7                	shl    %cl,%edi
    8459:	89 f8                	mov    %edi,%eax
    845b:	f7 d0                	not    %eax
    845d:	21 d8                	and    %ebx,%eax
    845f:	88 02                	mov    %al,(%edx)
    8461:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    8465:	83 6d e4 01          	subl   $0x1,-0x1c(%ebp)
    8469:	83 7d dc 07          	cmpl   $0x7,-0x24(%ebp)
    846d:	7f 0a                	jg     8479 <do_unlink+0x4ad>
    846f:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    8473:	0f 85 4c ff ff ff    	jne    83c5 <do_unlink+0x3f9>
    8479:	8b 45 ac             	mov    -0x54(%ebp),%eax
    847c:	89 c2                	mov    %eax,%edx
    847e:	c1 fa 1f             	sar    $0x1f,%edx
    8481:	c1 ea 17             	shr    $0x17,%edx
    8484:	01 d0                	add    %edx,%eax
    8486:	25 ff 01 00 00       	and    $0x1ff,%eax
    848b:	29 d0                	sub    %edx,%eax
    848d:	83 c0 01             	add    $0x1,%eax
    8490:	89 45 dc             	mov    %eax,-0x24(%ebp)
    8493:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
    849a:	e9 f0 00 00 00       	jmp    858f <do_unlink+0x5c3>
    849f:	81 7d dc 00 02 00 00 	cmpl   $0x200,-0x24(%ebp)
    84a6:	0f 85 91 00 00 00    	jne    853d <do_unlink+0x571>
    84ac:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    84b3:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    84b9:	8b 45 e0             	mov    -0x20(%ebp),%eax
    84bc:	c1 e0 09             	shl    $0x9,%eax
    84bf:	89 c2                	mov    %eax,%edx
    84c1:	c1 fa 1f             	sar    $0x1f,%edx
    84c4:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    84c7:	8b 49 20             	mov    0x20(%ecx),%ecx
    84ca:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    84ce:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    84d5:	00 
    84d6:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    84dd:	00 
    84de:	89 44 24 08          	mov    %eax,0x8(%esp)
    84e2:	89 54 24 0c          	mov    %edx,0xc(%esp)
    84e6:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    84ea:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    84f1:	e8 b8 de ff ff       	call   63ae <rw_sector>
    84f6:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    84fc:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    8500:	8b 45 e0             	mov    -0x20(%ebp),%eax
    8503:	c1 e0 09             	shl    $0x9,%eax
    8506:	89 c2                	mov    %eax,%edx
    8508:	c1 fa 1f             	sar    $0x1f,%edx
    850b:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    850e:	8b 49 20             	mov    0x20(%ecx),%ecx
    8511:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8515:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    851c:	00 
    851d:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8524:	00 
    8525:	89 44 24 08          	mov    %eax,0x8(%esp)
    8529:	89 54 24 0c          	mov    %edx,0xc(%esp)
    852d:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    8531:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    8538:	e8 71 de ff ff       	call   63ae <rw_sector>
    853d:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    8543:	8b 45 dc             	mov    -0x24(%ebp),%eax
    8546:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8549:	0f b6 00             	movzbl (%eax),%eax
    854c:	3c ff                	cmp    $0xff,%al
    854e:	74 24                	je     8574 <do_unlink+0x5a8>
    8550:	c7 44 24 0c 8f 00 00 	movl   $0x8f,0xc(%esp)
    8557:	00 
    8558:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    855f:	00 
    8560:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    8567:	00 
    8568:	c7 04 24 ba 19 01 00 	movl   $0x119ba,(%esp)
    856f:	e8 56 7e 00 00       	call   103ca <assertion_failure>
    8574:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    857a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    857d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8580:	c6 00 00             	movb   $0x0,(%eax)
    8583:	83 45 d8 01          	addl   $0x1,-0x28(%ebp)
    8587:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    858b:	83 6d e4 08          	subl   $0x8,-0x1c(%ebp)
    858f:	8b 45 d8             	mov    -0x28(%ebp),%eax
    8592:	3b 45 a4             	cmp    -0x5c(%ebp),%eax
    8595:	0f 8c 04 ff ff ff    	jl     849f <do_unlink+0x4d3>
    859b:	81 7d dc 00 02 00 00 	cmpl   $0x200,-0x24(%ebp)
    85a2:	0f 85 91 00 00 00    	jne    8639 <do_unlink+0x66d>
    85a8:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    85af:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    85b5:	8b 45 e0             	mov    -0x20(%ebp),%eax
    85b8:	c1 e0 09             	shl    $0x9,%eax
    85bb:	89 c2                	mov    %eax,%edx
    85bd:	c1 fa 1f             	sar    $0x1f,%edx
    85c0:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    85c3:	8b 49 20             	mov    0x20(%ecx),%ecx
    85c6:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    85ca:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    85d1:	00 
    85d2:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    85d9:	00 
    85da:	89 44 24 08          	mov    %eax,0x8(%esp)
    85de:	89 54 24 0c          	mov    %edx,0xc(%esp)
    85e2:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    85e6:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    85ed:	e8 bc dd ff ff       	call   63ae <rw_sector>
    85f2:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    85f8:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    85fc:	8b 45 e0             	mov    -0x20(%ebp),%eax
    85ff:	c1 e0 09             	shl    $0x9,%eax
    8602:	89 c2                	mov    %eax,%edx
    8604:	c1 fa 1f             	sar    $0x1f,%edx
    8607:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    860a:	8b 49 20             	mov    0x20(%ecx),%ecx
    860d:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8611:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    8618:	00 
    8619:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8620:	00 
    8621:	89 44 24 08          	mov    %eax,0x8(%esp)
    8625:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8629:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    862d:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    8634:	e8 75 dd ff ff       	call   63ae <rw_sector>
    8639:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    863c:	ba ff 00 00 00       	mov    $0xff,%edx
    8641:	89 d3                	mov    %edx,%ebx
    8643:	89 c1                	mov    %eax,%ecx
    8645:	d3 e3                	shl    %cl,%ebx
    8647:	89 d8                	mov    %ebx,%eax
    8649:	f7 d0                	not    %eax
    864b:	88 45 a3             	mov    %al,-0x5d(%ebp)
    864e:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    8654:	8b 45 dc             	mov    -0x24(%ebp),%eax
    8657:	8d 04 02             	lea    (%edx,%eax,1),%eax
    865a:	0f b6 00             	movzbl (%eax),%eax
    865d:	22 45 a3             	and    -0x5d(%ebp),%al
    8660:	3a 45 a3             	cmp    -0x5d(%ebp),%al
    8663:	74 24                	je     8689 <do_unlink+0x6bd>
    8665:	c7 44 24 0c 9a 00 00 	movl   $0x9a,0xc(%esp)
    866c:	00 
    866d:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    8674:	00 
    8675:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    867c:	00 
    867d:	c7 04 24 cb 19 01 00 	movl   $0x119cb,(%esp)
    8684:	e8 41 7d 00 00       	call   103ca <assertion_failure>
    8689:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    868f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    8692:	01 c2                	add    %eax,%edx
    8694:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    869a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    869d:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    86a0:	0f b6 00             	movzbl (%eax),%eax
    86a3:	89 c3                	mov    %eax,%ebx
    86a5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    86a8:	be ff ff ff ff       	mov    $0xffffffff,%esi
    86ad:	89 f7                	mov    %esi,%edi
    86af:	89 c1                	mov    %eax,%ecx
    86b1:	d3 e7                	shl    %cl,%edi
    86b3:	89 f8                	mov    %edi,%eax
    86b5:	21 d8                	and    %ebx,%eax
    86b7:	88 02                	mov    %al,(%edx)
    86b9:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    86bf:	8b 45 e0             	mov    -0x20(%ebp),%eax
    86c2:	c1 e0 09             	shl    $0x9,%eax
    86c5:	89 c2                	mov    %eax,%edx
    86c7:	c1 fa 1f             	sar    $0x1f,%edx
    86ca:	8b 4d b4             	mov    -0x4c(%ebp),%ecx
    86cd:	8b 49 20             	mov    0x20(%ecx),%ecx
    86d0:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    86d4:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    86db:	00 
    86dc:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    86e3:	00 
    86e4:	89 44 24 08          	mov    %eax,0x8(%esp)
    86e8:	89 54 24 0c          	mov    %edx,0xc(%esp)
    86ec:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    86f0:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    86f7:	e8 b2 dc ff ff       	call   63ae <rw_sector>
    86fc:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    86ff:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
    8705:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8708:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    870f:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8712:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
    8719:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    871c:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    8723:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8726:	89 04 24             	mov    %eax,(%esp)
    8729:	e8 a8 e0 ff ff       	call   67d6 <sync_inode>
    872e:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    8731:	89 04 24             	mov    %eax,(%esp)
    8734:	e8 58 e0 ff ff       	call   6791 <put_inode>
    8739:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    873f:	8b 40 08             	mov    0x8(%eax),%eax
    8742:	89 45 9c             	mov    %eax,-0x64(%ebp)
    8745:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    874b:	8b 40 04             	mov    0x4(%eax),%eax
    874e:	05 00 02 00 00       	add    $0x200,%eax
    8753:	c1 e8 09             	shr    $0x9,%eax
    8756:	89 45 98             	mov    %eax,-0x68(%ebp)
    8759:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    875f:	8b 40 04             	mov    0x4(%eax),%eax
    8762:	c1 e8 04             	shr    $0x4,%eax
    8765:	89 45 94             	mov    %eax,-0x6c(%ebp)
    8768:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
    876f:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
    8776:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
    877d:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
    8784:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    878b:	e9 25 01 00 00       	jmp    88b5 <do_unlink+0x8e9>
    8790:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    8796:	8b 45 dc             	mov    -0x24(%ebp),%eax
    8799:	8b 55 9c             	mov    -0x64(%ebp),%edx
    879c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    879f:	c1 e0 09             	shl    $0x9,%eax
    87a2:	89 c2                	mov    %eax,%edx
    87a4:	c1 fa 1f             	sar    $0x1f,%edx
    87a7:	8b 8d 90 fe ff ff    	mov    -0x170(%ebp),%ecx
    87ad:	8b 49 20             	mov    0x20(%ecx),%ecx
    87b0:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    87b4:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    87bb:	00 
    87bc:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    87c3:	00 
    87c4:	89 44 24 08          	mov    %eax,0x8(%esp)
    87c8:	89 54 24 0c          	mov    %edx,0xc(%esp)
    87cc:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    87d0:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    87d7:	e8 d2 db ff ff       	call   63ae <rw_sector>
    87dc:	a1 e8 32 01 00       	mov    0x132e8,%eax
    87e1:	89 45 d0             	mov    %eax,-0x30(%ebp)
    87e4:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
    87eb:	e9 a4 00 00 00       	jmp    8894 <do_unlink+0x8c8>
    87f0:	83 45 d4 01          	addl   $0x1,-0x2c(%ebp)
    87f4:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    87f7:	3b 45 94             	cmp    -0x6c(%ebp),%eax
    87fa:	0f 8f a2 00 00 00    	jg     88a2 <do_unlink+0x8d6>
    8800:	8b 45 d0             	mov    -0x30(%ebp),%eax
    8803:	8b 00                	mov    (%eax),%eax
    8805:	3b 45 b8             	cmp    -0x48(%ebp),%eax
    8808:	75 70                	jne    887a <do_unlink+0x8ae>
    880a:	c7 44 24 08 10 00 00 	movl   $0x10,0x8(%esp)
    8811:	00 
    8812:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    8819:	00 
    881a:	8b 45 d0             	mov    -0x30(%ebp),%eax
    881d:	89 04 24             	mov    %eax,(%esp)
    8820:	e8 fa 78 00 00       	call   1011f <memset>
    8825:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    882b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    882e:	8b 55 9c             	mov    -0x64(%ebp),%edx
    8831:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8834:	c1 e0 09             	shl    $0x9,%eax
    8837:	89 c2                	mov    %eax,%edx
    8839:	c1 fa 1f             	sar    $0x1f,%edx
    883c:	8b 8d 90 fe ff ff    	mov    -0x170(%ebp),%ecx
    8842:	8b 49 20             	mov    0x20(%ecx),%ecx
    8845:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8849:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    8850:	00 
    8851:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8858:	00 
    8859:	89 44 24 08          	mov    %eax,0x8(%esp)
    885d:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8861:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    8865:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    886c:	e8 3d db ff ff       	call   63ae <rw_sector>
    8871:	c7 45 cc 01 00 00 00 	movl   $0x1,-0x34(%ebp)
    8878:	eb 29                	jmp    88a3 <do_unlink+0x8d7>
    887a:	8b 45 d0             	mov    -0x30(%ebp),%eax
    887d:	8b 00                	mov    (%eax),%eax
    887f:	85 c0                	test   %eax,%eax
    8881:	74 09                	je     888c <do_unlink+0x8c0>
    8883:	8b 45 c8             	mov    -0x38(%ebp),%eax
    8886:	83 c0 10             	add    $0x10,%eax
    8889:	89 45 c8             	mov    %eax,-0x38(%ebp)
    888c:	83 45 c4 01          	addl   $0x1,-0x3c(%ebp)
    8890:	83 45 d0 10          	addl   $0x10,-0x30(%ebp)
    8894:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8897:	83 f8 1f             	cmp    $0x1f,%eax
    889a:	0f 86 50 ff ff ff    	jbe    87f0 <do_unlink+0x824>
    88a0:	eb 01                	jmp    88a3 <do_unlink+0x8d7>
    88a2:	90                   	nop
    88a3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    88a6:	3b 45 94             	cmp    -0x6c(%ebp),%eax
    88a9:	7f 16                	jg     88c1 <do_unlink+0x8f5>
    88ab:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
    88af:	75 10                	jne    88c1 <do_unlink+0x8f5>
    88b1:	83 45 dc 01          	addl   $0x1,-0x24(%ebp)
    88b5:	8b 45 dc             	mov    -0x24(%ebp),%eax
    88b8:	3b 45 98             	cmp    -0x68(%ebp),%eax
    88bb:	0f 8c cf fe ff ff    	jl     8790 <do_unlink+0x7c4>
    88c1:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
    88c5:	75 24                	jne    88eb <do_unlink+0x91f>
    88c7:	c7 44 24 0c d2 00 00 	movl   $0xd2,0xc(%esp)
    88ce:	00 
    88cf:	c7 44 24 08 3c 18 01 	movl   $0x1183c,0x8(%esp)
    88d6:	00 
    88d7:	c7 44 24 04 3c 18 01 	movl   $0x1183c,0x4(%esp)
    88de:	00 
    88df:	c7 04 24 e5 19 01 00 	movl   $0x119e5,(%esp)
    88e6:	e8 df 7a 00 00       	call   103ca <assertion_failure>
    88eb:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    88ee:	3b 45 94             	cmp    -0x6c(%ebp),%eax
    88f1:	75 1a                	jne    890d <do_unlink+0x941>
    88f3:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    88f9:	8b 55 c8             	mov    -0x38(%ebp),%edx
    88fc:	89 50 04             	mov    %edx,0x4(%eax)
    88ff:	8b 85 90 fe ff ff    	mov    -0x170(%ebp),%eax
    8905:	89 04 24             	mov    %eax,(%esp)
    8908:	e8 c9 de ff ff       	call   67d6 <sync_inode>
    890d:	b8 00 00 00 00       	mov    $0x0,%eax
    8912:	81 c4 8c 01 00 00    	add    $0x18c,%esp
    8918:	5b                   	pop    %ebx
    8919:	5e                   	pop    %esi
    891a:	5f                   	pop    %edi
    891b:	5d                   	pop    %ebp
    891c:	c3                   	ret    
    891d:	90                   	nop
    891e:	90                   	nop
    891f:	90                   	nop

00008920 <disklog>:
    8920:	55                   	push   %ebp
    8921:	89 e5                	mov    %esp,%ebp
    8923:	57                   	push   %edi
    8924:	56                   	push   %esi
    8925:	53                   	push   %ebx
    8926:	81 ec dc 00 00 00    	sub    $0xdc,%esp
    892c:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    8931:	8b 40 20             	mov    0x20(%eax),%eax
    8934:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    8937:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    893a:	89 04 24             	mov    %eax,(%esp)
    893d:	e8 8b dc ff ff       	call   65cd <get_super_block>
    8942:	89 45 c0             	mov    %eax,-0x40(%ebp)
    8945:	8b 45 c0             	mov    -0x40(%ebp),%eax
    8948:	8b 40 08             	mov    0x8(%eax),%eax
    894b:	2d 00 08 00 00       	sub    $0x800,%eax
    8950:	89 45 bc             	mov    %eax,-0x44(%ebp)
    8953:	a1 44 44 01 00       	mov    0x14444,%eax
    8958:	85 c0                	test   %eax,%eax
    895a:	0f 85 13 03 00 00    	jne    8c73 <disklog+0x353>
    8960:	c7 45 b8 00 10 00 00 	movl   $0x1000,-0x48(%ebp)
    8967:	8b 45 c0             	mov    -0x40(%ebp),%eax
    896a:	8b 40 0c             	mov    0xc(%eax),%eax
    896d:	83 c0 02             	add    $0x2,%eax
    8970:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    8973:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8976:	89 c2                	mov    %eax,%edx
    8978:	c1 fa 1f             	sar    $0x1f,%edx
    897b:	f7 7d b8             	idivl  -0x48(%ebp)
    897e:	03 45 b4             	add    -0x4c(%ebp),%eax
    8981:	89 45 b0             	mov    %eax,-0x50(%ebp)
    8984:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8987:	89 c2                	mov    %eax,%edx
    8989:	c1 fa 1f             	sar    $0x1f,%edx
    898c:	f7 7d b8             	idivl  -0x48(%ebp)
    898f:	89 d0                	mov    %edx,%eax
    8991:	8d 50 07             	lea    0x7(%eax),%edx
    8994:	85 c0                	test   %eax,%eax
    8996:	0f 48 c2             	cmovs  %edx,%eax
    8999:	c1 f8 03             	sar    $0x3,%eax
    899c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    899f:	8b 45 bc             	mov    -0x44(%ebp),%eax
    89a2:	89 c2                	mov    %eax,%edx
    89a4:	c1 fa 1f             	sar    $0x1f,%edx
    89a7:	f7 7d b8             	idivl  -0x48(%ebp)
    89aa:	89 d0                	mov    %edx,%eax
    89ac:	89 c2                	mov    %eax,%edx
    89ae:	c1 fa 1f             	sar    $0x1f,%edx
    89b1:	c1 ea 1d             	shr    $0x1d,%edx
    89b4:	01 d0                	add    %edx,%eax
    89b6:	83 e0 07             	and    $0x7,%eax
    89b9:	29 d0                	sub    %edx,%eax
    89bb:	89 45 e0             	mov    %eax,-0x20(%ebp)
    89be:	b8 00 08 00 00       	mov    $0x800,%eax
    89c3:	89 c2                	mov    %eax,%edx
    89c5:	c1 fa 1f             	sar    $0x1f,%edx
    89c8:	f7 7d b8             	idivl  -0x48(%ebp)
    89cb:	83 c0 02             	add    $0x2,%eax
    89ce:	89 45 ac             	mov    %eax,-0x54(%ebp)
    89d1:	c7 45 dc 00 08 00 00 	movl   $0x800,-0x24(%ebp)
    89d8:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
    89df:	e9 5a 01 00 00       	jmp    8b3e <disklog+0x21e>
    89e4:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    89ea:	e8 b9 7b 00 00       	call   105a8 <getpid>
    89ef:	89 c1                	mov    %eax,%ecx
    89f1:	8b 45 d8             	mov    -0x28(%ebp),%eax
    89f4:	8b 55 b0             	mov    -0x50(%ebp),%edx
    89f7:	8d 04 02             	lea    (%edx,%eax,1),%eax
    89fa:	c1 e0 09             	shl    $0x9,%eax
    89fd:	89 c2                	mov    %eax,%edx
    89ff:	c1 fa 1f             	sar    $0x1f,%edx
    8a02:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8a06:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8a0a:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8a11:	00 
    8a12:	89 44 24 08          	mov    %eax,0x8(%esp)
    8a16:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8a1a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8a1d:	89 44 24 04          	mov    %eax,0x4(%esp)
    8a21:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    8a28:	e8 81 d9 ff ff       	call   63ae <rw_sector>
    8a2d:	e9 9c 00 00 00       	jmp    8ace <disklog+0x1ae>
    8a32:	8b 15 f4 32 01 00    	mov    0x132f4,%edx
    8a38:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    8a3b:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8a3e:	0f b6 00             	movzbl (%eax),%eax
    8a41:	0f be d0             	movsbl %al,%edx
    8a44:	8b 45 e0             	mov    -0x20(%ebp),%eax
    8a47:	89 d3                	mov    %edx,%ebx
    8a49:	89 c1                	mov    %eax,%ecx
    8a4b:	d3 fb                	sar    %cl,%ebx
    8a4d:	89 d8                	mov    %ebx,%eax
    8a4f:	83 e0 01             	and    $0x1,%eax
    8a52:	85 c0                	test   %eax,%eax
    8a54:	74 24                	je     8a7a <disklog+0x15a>
    8a56:	c7 44 24 0c 6d 00 00 	movl   $0x6d,0xc(%esp)
    8a5d:	00 
    8a5e:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    8a65:	00 
    8a66:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    8a6d:	00 
    8a6e:	c7 04 24 f8 19 01 00 	movl   $0x119f8,(%esp)
    8a75:	e8 50 79 00 00       	call   103ca <assertion_failure>
    8a7a:	8b 15 f4 32 01 00    	mov    0x132f4,%edx
    8a80:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    8a83:	01 c2                	add    %eax,%edx
    8a85:	8b 0d f4 32 01 00    	mov    0x132f4,%ecx
    8a8b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    8a8e:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    8a91:	0f b6 18             	movzbl (%eax),%ebx
    8a94:	8b 45 e0             	mov    -0x20(%ebp),%eax
    8a97:	be 01 00 00 00       	mov    $0x1,%esi
    8a9c:	89 f7                	mov    %esi,%edi
    8a9e:	89 c1                	mov    %eax,%ecx
    8aa0:	d3 e7                	shl    %cl,%edi
    8aa2:	89 f8                	mov    %edi,%eax
    8aa4:	09 d8                	or     %ebx,%eax
    8aa6:	88 02                	mov    %al,(%edx)
    8aa8:	83 6d dc 01          	subl   $0x1,-0x24(%ebp)
    8aac:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    8ab0:	74 10                	je     8ac2 <disklog+0x1a2>
    8ab2:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    8ab6:	83 7d e0 07          	cmpl   $0x7,-0x20(%ebp)
    8aba:	0f 8e 72 ff ff ff    	jle    8a32 <disklog+0x112>
    8ac0:	eb 01                	jmp    8ac3 <disklog+0x1a3>
    8ac2:	90                   	nop
    8ac3:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    8aca:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    8ace:	81 7d e4 ff 01 00 00 	cmpl   $0x1ff,-0x1c(%ebp)
    8ad5:	7f 06                	jg     8add <disklog+0x1bd>
    8ad7:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    8adb:	7f d9                	jg     8ab6 <disklog+0x196>
    8add:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    8ae4:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    8aeb:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8af1:	e8 b2 7a 00 00       	call   105a8 <getpid>
    8af6:	89 c1                	mov    %eax,%ecx
    8af8:	8b 45 d8             	mov    -0x28(%ebp),%eax
    8afb:	8b 55 b0             	mov    -0x50(%ebp),%edx
    8afe:	8d 04 02             	lea    (%edx,%eax,1),%eax
    8b01:	c1 e0 09             	shl    $0x9,%eax
    8b04:	89 c2                	mov    %eax,%edx
    8b06:	c1 fa 1f             	sar    $0x1f,%edx
    8b09:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8b0d:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8b11:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8b18:	00 
    8b19:	89 44 24 08          	mov    %eax,0x8(%esp)
    8b1d:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8b21:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8b24:	89 44 24 04          	mov    %eax,0x4(%esp)
    8b28:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    8b2f:	e8 7a d8 ff ff       	call   63ae <rw_sector>
    8b34:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    8b38:	74 12                	je     8b4c <disklog+0x22c>
    8b3a:	83 45 d8 01          	addl   $0x1,-0x28(%ebp)
    8b3e:	8b 45 d8             	mov    -0x28(%ebp),%eax
    8b41:	3b 45 ac             	cmp    -0x54(%ebp),%eax
    8b44:	0f 8c 9a fe ff ff    	jl     89e4 <disklog+0xc4>
    8b4a:	eb 01                	jmp    8b4d <disklog+0x22d>
    8b4c:	90                   	nop
    8b4d:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    8b51:	74 24                	je     8b77 <disklog+0x257>
    8b53:	c7 44 24 0c 7c 00 00 	movl   $0x7c,0xc(%esp)
    8b5a:	00 
    8b5b:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    8b62:	00 
    8b63:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    8b6a:	00 
    8b6b:	c7 04 24 25 1a 01 00 	movl   $0x11a25,(%esp)
    8b72:	e8 53 78 00 00       	call   103ca <assertion_failure>
    8b77:	c7 05 44 44 01 00 40 	movl   $0x40,0x14444
    8b7e:	00 00 00 
    8b81:	a1 00 0c 01 00       	mov    0x10c00,%eax
    8b86:	c1 f8 09             	sar    $0x9,%eax
    8b89:	ba 00 01 00 00       	mov    $0x100,%edx
    8b8e:	3d 00 01 00 00       	cmp    $0x100,%eax
    8b93:	0f 4f c2             	cmovg  %edx,%eax
    8b96:	89 45 a8             	mov    %eax,-0x58(%ebp)
    8b99:	81 7d a8 00 01 00 00 	cmpl   $0x100,-0x58(%ebp)
    8ba0:	74 24                	je     8bc6 <disklog+0x2a6>
    8ba2:	c7 44 24 0c 84 00 00 	movl   $0x84,0xc(%esp)
    8ba9:	00 
    8baa:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    8bb1:	00 
    8bb2:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    8bb9:	00 
    8bba:	c7 04 24 34 1a 01 00 	movl   $0x11a34,(%esp)
    8bc1:	e8 04 78 00 00       	call   103ca <assertion_failure>
    8bc6:	c7 45 d4 00 08 00 00 	movl   $0x800,-0x2c(%ebp)
    8bcd:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8bd0:	89 45 d8             	mov    %eax,-0x28(%ebp)
    8bd3:	eb 74                	jmp    8c49 <disklog+0x329>
    8bd5:	8b 45 a8             	mov    -0x58(%ebp),%eax
    8bd8:	89 c2                	mov    %eax,%edx
    8bda:	c1 e2 09             	shl    $0x9,%edx
    8bdd:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8be2:	89 54 24 08          	mov    %edx,0x8(%esp)
    8be6:	c7 44 24 04 20 00 00 	movl   $0x20,0x4(%esp)
    8bed:	00 
    8bee:	89 04 24             	mov    %eax,(%esp)
    8bf1:	e8 29 75 00 00       	call   1011f <memset>
    8bf6:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8bfc:	e8 a7 79 00 00       	call   105a8 <getpid>
    8c01:	89 c1                	mov    %eax,%ecx
    8c03:	8b 45 a8             	mov    -0x58(%ebp),%eax
    8c06:	89 c6                	mov    %eax,%esi
    8c08:	c1 e6 09             	shl    $0x9,%esi
    8c0b:	8b 45 d8             	mov    -0x28(%ebp),%eax
    8c0e:	c1 e0 09             	shl    $0x9,%eax
    8c11:	89 c2                	mov    %eax,%edx
    8c13:	c1 fa 1f             	sar    $0x1f,%edx
    8c16:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8c1a:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8c1e:	89 74 24 10          	mov    %esi,0x10(%esp)
    8c22:	89 44 24 08          	mov    %eax,0x8(%esp)
    8c26:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8c2a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8c2d:	89 44 24 04          	mov    %eax,0x4(%esp)
    8c31:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    8c38:	e8 71 d7 ff ff       	call   63ae <rw_sector>
    8c3d:	8b 45 a8             	mov    -0x58(%ebp),%eax
    8c40:	29 45 d4             	sub    %eax,-0x2c(%ebp)
    8c43:	8b 45 a8             	mov    -0x58(%ebp),%eax
    8c46:	01 45 d8             	add    %eax,-0x28(%ebp)
    8c49:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8c4c:	05 00 08 00 00       	add    $0x800,%eax
    8c51:	3b 45 d8             	cmp    -0x28(%ebp),%eax
    8c54:	0f 8f 7b ff ff ff    	jg     8bd5 <disklog+0x2b5>
    8c5a:	83 7d d4 00          	cmpl   $0x0,-0x2c(%ebp)
    8c5e:	74 13                	je     8c73 <disklog+0x353>
    8c60:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    8c63:	89 44 24 04          	mov    %eax,0x4(%esp)
    8c67:	c7 04 24 44 1a 01 00 	movl   $0x11a44,(%esp)
    8c6e:	e8 c4 92 ff ff       	call   1f37 <panic>
    8c73:	8b 45 08             	mov    0x8(%ebp),%eax
    8c76:	89 45 d0             	mov    %eax,-0x30(%ebp)
    8c79:	8b 45 08             	mov    0x8(%ebp),%eax
    8c7c:	89 04 24             	mov    %eax,(%esp)
    8c7f:	e8 da 74 00 00       	call   1015e <strlen>
    8c84:	89 45 cc             	mov    %eax,-0x34(%ebp)
    8c87:	a1 44 44 01 00       	mov    0x14444,%eax
    8c8c:	c1 f8 09             	sar    $0x9,%eax
    8c8f:	03 45 bc             	add    -0x44(%ebp),%eax
    8c92:	89 45 c8             	mov    %eax,-0x38(%ebp)
    8c95:	e9 f8 00 00 00       	jmp    8d92 <disklog+0x472>
    8c9a:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8ca0:	e8 03 79 00 00       	call   105a8 <getpid>
    8ca5:	89 c1                	mov    %eax,%ecx
    8ca7:	8b 45 c8             	mov    -0x38(%ebp),%eax
    8caa:	c1 e0 09             	shl    $0x9,%eax
    8cad:	89 c2                	mov    %eax,%edx
    8caf:	c1 fa 1f             	sar    $0x1f,%edx
    8cb2:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8cb6:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8cba:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8cc1:	00 
    8cc2:	89 44 24 08          	mov    %eax,0x8(%esp)
    8cc6:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8cca:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8ccd:	89 44 24 04          	mov    %eax,0x4(%esp)
    8cd1:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    8cd8:	e8 d1 d6 ff ff       	call   63ae <rw_sector>
    8cdd:	a1 44 44 01 00       	mov    0x14444,%eax
    8ce2:	89 c2                	mov    %eax,%edx
    8ce4:	c1 fa 1f             	sar    $0x1f,%edx
    8ce7:	c1 ea 17             	shr    $0x17,%edx
    8cea:	01 d0                	add    %edx,%eax
    8cec:	25 ff 01 00 00       	and    $0x1ff,%eax
    8cf1:	29 d0                	sub    %edx,%eax
    8cf3:	89 45 a4             	mov    %eax,-0x5c(%ebp)
    8cf6:	b8 00 02 00 00       	mov    $0x200,%eax
    8cfb:	89 c2                	mov    %eax,%edx
    8cfd:	2b 55 a4             	sub    -0x5c(%ebp),%edx
    8d00:	8b 45 cc             	mov    -0x34(%ebp),%eax
    8d03:	39 c2                	cmp    %eax,%edx
    8d05:	0f 4e c2             	cmovle %edx,%eax
    8d08:	89 45 a0             	mov    %eax,-0x60(%ebp)
    8d0b:	8b 15 f4 32 01 00    	mov    0x132f4,%edx
    8d11:	8b 45 a4             	mov    -0x5c(%ebp),%eax
    8d14:	01 c2                	add    %eax,%edx
    8d16:	8b 45 a0             	mov    -0x60(%ebp),%eax
    8d19:	89 44 24 08          	mov    %eax,0x8(%esp)
    8d1d:	8b 45 d0             	mov    -0x30(%ebp),%eax
    8d20:	89 44 24 04          	mov    %eax,0x4(%esp)
    8d24:	89 14 24             	mov    %edx,(%esp)
    8d27:	e8 c4 73 00 00       	call   100f0 <memcpy>
    8d2c:	8b 45 a0             	mov    -0x60(%ebp),%eax
    8d2f:	01 45 a4             	add    %eax,-0x5c(%ebp)
    8d32:	8b 45 a0             	mov    -0x60(%ebp),%eax
    8d35:	29 45 cc             	sub    %eax,-0x34(%ebp)
    8d38:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8d3e:	e8 65 78 00 00       	call   105a8 <getpid>
    8d43:	89 c1                	mov    %eax,%ecx
    8d45:	8b 45 c8             	mov    -0x38(%ebp),%eax
    8d48:	c1 e0 09             	shl    $0x9,%eax
    8d4b:	89 c2                	mov    %eax,%edx
    8d4d:	c1 fa 1f             	sar    $0x1f,%edx
    8d50:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8d54:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8d58:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8d5f:	00 
    8d60:	89 44 24 08          	mov    %eax,0x8(%esp)
    8d64:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8d68:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8d6b:	89 44 24 04          	mov    %eax,0x4(%esp)
    8d6f:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    8d76:	e8 33 d6 ff ff       	call   63ae <rw_sector>
    8d7b:	83 45 c8 01          	addl   $0x1,-0x38(%ebp)
    8d7f:	a1 44 44 01 00       	mov    0x14444,%eax
    8d84:	03 45 a0             	add    -0x60(%ebp),%eax
    8d87:	a3 44 44 01 00       	mov    %eax,0x14444
    8d8c:	8b 45 a0             	mov    -0x60(%ebp),%eax
    8d8f:	01 45 d0             	add    %eax,-0x30(%ebp)
    8d92:	83 7d cc 00          	cmpl   $0x0,-0x34(%ebp)
    8d96:	0f 85 fe fe ff ff    	jne    8c9a <disklog+0x37a>
    8d9c:	c7 85 5c ff ff ff 04 	movl   $0x4,-0xa4(%ebp)
    8da3:	00 00 00 
    8da6:	8d 45 88             	lea    -0x78(%ebp),%eax
    8da9:	89 45 84             	mov    %eax,-0x7c(%ebp)
    8dac:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
    8db2:	89 44 24 08          	mov    %eax,0x8(%esp)
    8db6:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    8dbd:	00 
    8dbe:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    8dc5:	e8 ae 73 00 00       	call   10178 <send_recv>
    8dca:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8dd0:	e8 d3 77 00 00       	call   105a8 <getpid>
    8dd5:	89 c1                	mov    %eax,%ecx
    8dd7:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8dda:	c1 e0 09             	shl    $0x9,%eax
    8ddd:	89 c2                	mov    %eax,%edx
    8ddf:	c1 fa 1f             	sar    $0x1f,%edx
    8de2:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8de6:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8dea:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8df1:	00 
    8df2:	89 44 24 08          	mov    %eax,0x8(%esp)
    8df6:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8dfa:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8dfd:	89 44 24 04          	mov    %eax,0x4(%esp)
    8e01:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    8e08:	e8 a1 d5 ff ff       	call   63ae <rw_sector>
    8e0d:	8b 15 44 44 01 00    	mov    0x14444,%edx
    8e13:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8e18:	89 54 24 08          	mov    %edx,0x8(%esp)
    8e1c:	c7 44 24 04 69 1a 01 	movl   $0x11a69,0x4(%esp)
    8e23:	00 
    8e24:	89 04 24             	mov    %eax,(%esp)
    8e27:	e8 97 72 00 00       	call   100c3 <sprintf>
    8e2c:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8e31:	83 c0 09             	add    $0x9,%eax
    8e34:	c7 44 24 08 16 00 00 	movl   $0x16,0x8(%esp)
    8e3b:	00 
    8e3c:	c7 44 24 04 20 00 00 	movl   $0x20,0x4(%esp)
    8e43:	00 
    8e44:	89 04 24             	mov    %eax,(%esp)
    8e47:	e8 d3 72 00 00       	call   1011f <memset>
    8e4c:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8e51:	83 c0 1f             	add    $0x1f,%eax
    8e54:	c6 00 0a             	movb   $0xa,(%eax)
    8e57:	8b 45 9c             	mov    -0x64(%ebp),%eax
    8e5a:	89 85 54 ff ff ff    	mov    %eax,-0xac(%ebp)
    8e60:	8b 7d 98             	mov    -0x68(%ebp),%edi
    8e63:	8b 75 94             	mov    -0x6c(%ebp),%esi
    8e66:	8b 5d 90             	mov    -0x70(%ebp),%ebx
    8e69:	8b 4d 8c             	mov    -0x74(%ebp),%ecx
    8e6c:	8b 55 88             	mov    -0x78(%ebp),%edx
    8e6f:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8e74:	83 c0 20             	add    $0x20,%eax
    8e77:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
    8e7d:	8b 85 54 ff ff ff    	mov    -0xac(%ebp),%eax
    8e83:	89 44 24 1c          	mov    %eax,0x1c(%esp)
    8e87:	89 7c 24 18          	mov    %edi,0x18(%esp)
    8e8b:	89 74 24 14          	mov    %esi,0x14(%esp)
    8e8f:	89 5c 24 10          	mov    %ebx,0x10(%esp)
    8e93:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    8e97:	89 54 24 08          	mov    %edx,0x8(%esp)
    8e9b:	c7 44 24 04 70 1a 01 	movl   $0x11a70,0x4(%esp)
    8ea2:	00 
    8ea3:	8b 8d 44 ff ff ff    	mov    -0xbc(%ebp),%ecx
    8ea9:	89 0c 24             	mov    %ecx,(%esp)
    8eac:	e8 12 72 00 00       	call   100c3 <sprintf>
    8eb1:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8eb6:	83 c0 36             	add    $0x36,%eax
    8eb9:	c7 44 24 08 09 00 00 	movl   $0x9,0x8(%esp)
    8ec0:	00 
    8ec1:	c7 44 24 04 20 00 00 	movl   $0x20,0x4(%esp)
    8ec8:	00 
    8ec9:	89 04 24             	mov    %eax,(%esp)
    8ecc:	e8 4e 72 00 00       	call   1011f <memset>
    8ed1:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8ed6:	83 c0 3f             	add    $0x3f,%eax
    8ed9:	c6 00 0a             	movb   $0xa,(%eax)
    8edc:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8ee2:	e8 c1 76 00 00       	call   105a8 <getpid>
    8ee7:	89 c1                	mov    %eax,%ecx
    8ee9:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8eec:	c1 e0 09             	shl    $0x9,%eax
    8eef:	89 c2                	mov    %eax,%edx
    8ef1:	c1 fa 1f             	sar    $0x1f,%edx
    8ef4:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8ef8:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8efc:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8f03:	00 
    8f04:	89 44 24 08          	mov    %eax,0x8(%esp)
    8f08:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8f0c:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8f0f:	89 44 24 04          	mov    %eax,0x4(%esp)
    8f13:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    8f1a:	e8 8f d4 ff ff       	call   63ae <rw_sector>
    8f1f:	a1 f4 32 01 00       	mov    0x132f4,%eax
    8f24:	83 c0 33             	add    $0x33,%eax
    8f27:	0f b6 00             	movzbl (%eax),%eax
    8f2a:	0f be c0             	movsbl %al,%eax
    8f2d:	8b 15 f4 32 01 00    	mov    0x132f4,%edx
    8f33:	83 c2 40             	add    $0x40,%edx
    8f36:	c7 44 24 08 c0 01 00 	movl   $0x1c0,0x8(%esp)
    8f3d:	00 
    8f3e:	89 44 24 04          	mov    %eax,0x4(%esp)
    8f42:	89 14 24             	mov    %edx,(%esp)
    8f45:	e8 d5 71 00 00       	call   1011f <memset>
    8f4a:	8b 1d f4 32 01 00    	mov    0x132f4,%ebx
    8f50:	e8 53 76 00 00       	call   105a8 <getpid>
    8f55:	89 c1                	mov    %eax,%ecx
    8f57:	8b 45 bc             	mov    -0x44(%ebp),%eax
    8f5a:	05 ff 07 00 00       	add    $0x7ff,%eax
    8f5f:	c1 e0 09             	shl    $0x9,%eax
    8f62:	89 c2                	mov    %eax,%edx
    8f64:	c1 fa 1f             	sar    $0x1f,%edx
    8f67:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    8f6b:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    8f6f:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    8f76:	00 
    8f77:	89 44 24 08          	mov    %eax,0x8(%esp)
    8f7b:	89 54 24 0c          	mov    %edx,0xc(%esp)
    8f7f:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    8f82:	89 44 24 04          	mov    %eax,0x4(%esp)
    8f86:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    8f8d:	e8 1c d4 ff ff       	call   63ae <rw_sector>
    8f92:	a1 44 44 01 00       	mov    0x14444,%eax
    8f97:	81 c4 dc 00 00 00    	add    $0xdc,%esp
    8f9d:	5b                   	pop    %ebx
    8f9e:	5e                   	pop    %esi
    8f9f:	5f                   	pop    %edi
    8fa0:	5d                   	pop    %ebp
    8fa1:	c3                   	ret    

00008fa2 <dump_fd_graph>:
    8fa2:	55                   	push   %ebp
    8fa3:	89 e5                	mov    %esp,%ebp
    8fa5:	57                   	push   %edi
    8fa6:	56                   	push   %esi
    8fa7:	53                   	push   %ebx
    8fa8:	81 ec cc 30 00 00    	sub    $0x30cc,%esp
    8fae:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    8fb5:	8d 45 08             	lea    0x8(%ebp),%eax
    8fb8:	83 c0 04             	add    $0x4,%eax
    8fbb:	89 45 a4             	mov    %eax,-0x5c(%ebp)
    8fbe:	8b 45 08             	mov    0x8(%ebp),%eax
    8fc1:	8b 55 a4             	mov    -0x5c(%ebp),%edx
    8fc4:	89 54 24 08          	mov    %edx,0x8(%esp)
    8fc8:	89 44 24 04          	mov    %eax,0x4(%esp)
    8fcc:	8d 85 60 fb ff ff    	lea    -0x4a0(%ebp),%eax
    8fd2:	89 04 24             	mov    %eax,(%esp)
    8fd5:	e8 61 6e 00 00       	call   fe3b <vsprintf>
    8fda:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    8fdd:	8d 85 60 fb ff ff    	lea    -0x4a0(%ebp),%eax
    8fe3:	89 04 24             	mov    %eax,(%esp)
    8fe6:	e8 73 71 00 00       	call   1015e <strlen>
    8feb:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
    8fee:	74 24                	je     9014 <dump_fd_graph+0x72>
    8ff0:	c7 44 24 0c 29 01 00 	movl   $0x129,0xc(%esp)
    8ff7:	00 
    8ff8:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    8fff:	00 
    9000:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    9007:	00 
    9008:	c7 04 24 8f 1a 01 00 	movl   $0x11a8f,(%esp)
    900f:	e8 b6 73 00 00       	call   103ca <assertion_failure>
    9014:	8d 85 60 fb ff ff    	lea    -0x4a0(%ebp),%eax
    901a:	89 44 24 04          	mov    %eax,0x4(%esp)
    901e:	c7 04 24 a2 1a 01 00 	movl   $0x11aa2,(%esp)
    9025:	e8 60 6d 00 00       	call   fd8a <printl>
    902a:	e8 79 75 00 00       	call   105a8 <getpid>
    902f:	89 45 a0             	mov    %eax,-0x60(%ebp)
    9032:	c7 04 24 b5 1a 01 00 	movl   $0x11ab5,(%esp)
    9039:	e8 4c 6d 00 00       	call   fd8a <printl>
    903e:	e8 cc bf ff ff       	call   500f <disable_int>
    9043:	c7 45 dc c0 0c 05 00 	movl   $0x50cc0,-0x24(%ebp)
    904a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    9051:	eb 73                	jmp    90c6 <dump_fd_graph+0x124>
    9053:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9056:	8b 40 72             	mov    0x72(%eax),%eax
    9059:	83 f8 20             	cmp    $0x20,%eax
    905c:	74 50                	je     90ae <dump_fd_graph+0x10c>
    905e:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    9062:	74 4d                	je     90b1 <dump_fd_graph+0x10f>
    9064:	83 7d e4 01          	cmpl   $0x1,-0x1c(%ebp)
    9068:	74 4a                	je     90b4 <dump_fd_graph+0x112>
    906a:	83 7d e4 02          	cmpl   $0x2,-0x1c(%ebp)
    906e:	74 47                	je     90b7 <dump_fd_graph+0x115>
    9070:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9073:	3b 45 a0             	cmp    -0x60(%ebp),%eax
    9076:	74 42                	je     90ba <dump_fd_graph+0x118>
    9078:	8b 45 dc             	mov    -0x24(%ebp),%eax
    907b:	8b 50 5a             	mov    0x5a(%eax),%edx
    907e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9081:	89 94 85 b8 fa ff ff 	mov    %edx,-0x548(%ebp,%eax,4)
    9088:	8b 45 dc             	mov    -0x24(%ebp),%eax
    908b:	8b 50 5e             	mov    0x5e(%eax),%edx
    908e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9091:	89 94 85 10 fa ff ff 	mov    %edx,-0x5f0(%ebp,%eax,4)
    9098:	8b 45 dc             	mov    -0x24(%ebp),%eax
    909b:	c7 40 5a 00 00 00 00 	movl   $0x0,0x5a(%eax)
    90a2:	8b 45 dc             	mov    -0x24(%ebp),%eax
    90a5:	c7 40 5e 00 00 00 00 	movl   $0x0,0x5e(%eax)
    90ac:	eb 0d                	jmp    90bb <dump_fd_graph+0x119>
    90ae:	90                   	nop
    90af:	eb 0a                	jmp    90bb <dump_fd_graph+0x119>
    90b1:	90                   	nop
    90b2:	eb 07                	jmp    90bb <dump_fd_graph+0x119>
    90b4:	90                   	nop
    90b5:	eb 04                	jmp    90bb <dump_fd_graph+0x119>
    90b7:	90                   	nop
    90b8:	eb 01                	jmp    90bb <dump_fd_graph+0x119>
    90ba:	90                   	nop
    90bb:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    90bf:	81 45 dc 36 03 00 00 	addl   $0x336,-0x24(%ebp)
    90c6:	83 7d e4 29          	cmpl   $0x29,-0x1c(%ebp)
    90ca:	7e 87                	jle    9053 <dump_fd_graph+0xb1>
    90cc:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    90d3:	eb 12                	jmp    90e7 <dump_fd_graph+0x145>
    90d5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    90d8:	c7 84 85 80 f9 ff ff 	movl   $0x11ab8,-0x680(%ebp,%eax,4)
    90df:	b8 1a 01 00 
    90e3:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    90e7:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    90ea:	83 f8 1f             	cmp    $0x1f,%eax
    90ed:	76 e6                	jbe    90d5 <dump_fd_graph+0x133>
    90ef:	c7 85 80 f9 ff ff c8 	movl   $0x11ac8,-0x680(%ebp)
    90f6:	1a 01 00 
    90f9:	c7 85 88 f9 ff ff d0 	movl   $0x11ad0,-0x678(%ebp)
    9100:	1a 01 00 
    9103:	c7 85 90 f9 ff ff d8 	movl   $0x11ad8,-0x670(%ebp)
    910a:	1a 01 00 
    910d:	c7 85 a0 f9 ff ff e2 	movl   $0x11ae2,-0x660(%ebp)
    9114:	1a 01 00 
    9117:	c7 85 c0 f9 ff ff ea 	movl   $0x11aea,-0x640(%ebp)
    911e:	1a 01 00 
    9121:	c7 85 00 fa ff ff f2 	movl   $0x11af2,-0x600(%ebp)
    9128:	1a 01 00 
    912b:	c7 85 a8 f9 ff ff fc 	movl   $0x11afc,-0x658(%ebp)
    9132:	1a 01 00 
    9135:	c7 85 b0 f9 ff ff 0d 	movl   $0x11b0d,-0x650(%ebp)
    913c:	1b 01 00 
    913f:	c7 85 d0 f9 ff ff 20 	movl   $0x11b20,-0x630(%ebp)
    9146:	1b 01 00 
    9149:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
    9150:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
    9157:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
    915e:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
    9165:	c7 04 24 33 1b 01 00 	movl   $0x11b33,(%esp)
    916c:	e8 19 6c 00 00       	call   fd8a <printl>
    9171:	a1 40 44 01 00       	mov    0x14440,%eax
    9176:	89 c2                	mov    %eax,%edx
    9178:	83 c0 01             	add    $0x1,%eax
    917b:	a3 40 44 01 00       	mov    %eax,0x14440
    9180:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    9186:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9189:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    918c:	89 54 24 08          	mov    %edx,0x8(%esp)
    9190:	c7 44 24 04 37 1b 01 	movl   $0x11b37,0x4(%esp)
    9197:	00 
    9198:	89 04 24             	mov    %eax,(%esp)
    919b:	e8 23 6f 00 00       	call   100c3 <sprintf>
    91a0:	01 45 e0             	add    %eax,-0x20(%ebp)
    91a3:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    91a9:	8b 45 e0             	mov    -0x20(%ebp),%eax
    91ac:	8d 04 02             	lea    (%edx,%eax,1),%eax
    91af:	c7 44 24 04 4f 1b 01 	movl   $0x11b4f,0x4(%esp)
    91b6:	00 
    91b7:	89 04 24             	mov    %eax,(%esp)
    91ba:	e8 04 6f 00 00       	call   100c3 <sprintf>
    91bf:	01 45 e0             	add    %eax,-0x20(%ebp)
    91c2:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    91c8:	8b 45 e0             	mov    -0x20(%ebp),%eax
    91cb:	8d 04 02             	lea    (%edx,%eax,1),%eax
    91ce:	c7 44 24 04 59 1b 01 	movl   $0x11b59,0x4(%esp)
    91d5:	00 
    91d6:	89 04 24             	mov    %eax,(%esp)
    91d9:	e8 e5 6e 00 00       	call   100c3 <sprintf>
    91de:	01 45 e0             	add    %eax,-0x20(%ebp)
    91e1:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    91e7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    91ea:	8d 04 02             	lea    (%edx,%eax,1),%eax
    91ed:	c7 44 24 04 6b 1b 01 	movl   $0x11b6b,0x4(%esp)
    91f4:	00 
    91f5:	89 04 24             	mov    %eax,(%esp)
    91f8:	e8 c6 6e 00 00       	call   100c3 <sprintf>
    91fd:	01 45 e0             	add    %eax,-0x20(%ebp)
    9200:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9206:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9209:	8d 04 02             	lea    (%edx,%eax,1),%eax
    920c:	c7 44 24 04 70 1b 01 	movl   $0x11b70,0x4(%esp)
    9213:	00 
    9214:	89 04 24             	mov    %eax,(%esp)
    9217:	e8 a7 6e 00 00       	call   100c3 <sprintf>
    921c:	01 45 e0             	add    %eax,-0x20(%ebp)
    921f:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9225:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9228:	8d 04 02             	lea    (%edx,%eax,1),%eax
    922b:	c7 44 24 04 79 1b 01 	movl   $0x11b79,0x4(%esp)
    9232:	00 
    9233:	89 04 24             	mov    %eax,(%esp)
    9236:	e8 88 6e 00 00       	call   100c3 <sprintf>
    923b:	01 45 e0             	add    %eax,-0x20(%ebp)
    923e:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9244:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9247:	8d 04 02             	lea    (%edx,%eax,1),%eax
    924a:	c7 44 24 04 8c 1b 01 	movl   $0x11b8c,0x4(%esp)
    9251:	00 
    9252:	89 04 24             	mov    %eax,(%esp)
    9255:	e8 69 6e 00 00       	call   100c3 <sprintf>
    925a:	01 45 e0             	add    %eax,-0x20(%ebp)
    925d:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9263:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9266:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9269:	c7 44 24 04 6b 1b 01 	movl   $0x11b6b,0x4(%esp)
    9270:	00 
    9271:	89 04 24             	mov    %eax,(%esp)
    9274:	e8 4a 6e 00 00       	call   100c3 <sprintf>
    9279:	01 45 e0             	add    %eax,-0x20(%ebp)
    927c:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9282:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9285:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9288:	c7 44 24 04 a1 1b 01 	movl   $0x11ba1,0x4(%esp)
    928f:	00 
    9290:	89 04 24             	mov    %eax,(%esp)
    9293:	e8 2b 6e 00 00       	call   100c3 <sprintf>
    9298:	01 45 e0             	add    %eax,-0x20(%ebp)
    929b:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    92a1:	8b 45 e0             	mov    -0x20(%ebp),%eax
    92a4:	8d 04 02             	lea    (%edx,%eax,1),%eax
    92a7:	c7 44 24 04 6b 1b 01 	movl   $0x11b6b,0x4(%esp)
    92ae:	00 
    92af:	89 04 24             	mov    %eax,(%esp)
    92b2:	e8 0c 6e 00 00       	call   100c3 <sprintf>
    92b7:	01 45 e0             	add    %eax,-0x20(%ebp)
    92ba:	c7 45 dc c0 0c 05 00 	movl   $0x50cc0,-0x24(%ebp)
    92c1:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    92c7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    92ca:	8d 04 02             	lea    (%edx,%eax,1),%eax
    92cd:	c7 44 24 04 aa 1b 01 	movl   $0x11baa,0x4(%esp)
    92d4:	00 
    92d5:	89 04 24             	mov    %eax,(%esp)
    92d8:	e8 e6 6d 00 00       	call   100c3 <sprintf>
    92dd:	01 45 e0             	add    %eax,-0x20(%ebp)
    92e0:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    92e7:	e9 43 03 00 00       	jmp    962f <dump_fd_graph+0x68d>
    92ec:	8b 45 dc             	mov    -0x24(%ebp),%eax
    92ef:	8b 40 72             	mov    0x72(%eax),%eax
    92f2:	83 f8 20             	cmp    $0x20,%eax
    92f5:	0f 84 28 03 00 00    	je     9623 <dump_fd_graph+0x681>
    92fb:	8b 45 dc             	mov    -0x24(%ebp),%eax
    92fe:	8b 80 1a 02 00 00    	mov    0x21a(%eax),%eax
    9304:	83 f8 3e             	cmp    $0x3e,%eax
    9307:	74 24                	je     932d <dump_fd_graph+0x38b>
    9309:	8b 45 d8             	mov    -0x28(%ebp),%eax
    930c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    930f:	89 94 c5 80 f1 ff ff 	mov    %edx,-0xe80(%ebp,%eax,8)
    9316:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9319:	8b 90 1a 02 00 00    	mov    0x21a(%eax),%edx
    931f:	8b 45 d8             	mov    -0x28(%ebp),%eax
    9322:	89 94 c5 84 f1 ff ff 	mov    %edx,-0xe7c(%ebp,%eax,8)
    9329:	83 45 d8 01          	addl   $0x1,-0x28(%ebp)
    932d:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9330:	8b 40 72             	mov    0x72(%eax),%eax
    9333:	83 e0 04             	and    $0x4,%eax
    9336:	85 c0                	test   %eax,%eax
    9338:	74 74                	je     93ae <dump_fd_graph+0x40c>
    933a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    933d:	8b 88 06 02 00 00    	mov    0x206(%eax),%ecx
    9343:	8b 55 cc             	mov    -0x34(%ebp),%edx
    9346:	89 d0                	mov    %edx,%eax
    9348:	01 c0                	add    %eax,%eax
    934a:	01 d0                	add    %edx,%eax
    934c:	c1 e0 02             	shl    $0x2,%eax
    934f:	8d 55 e8             	lea    -0x18(%ebp),%edx
    9352:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9355:	2d 68 2e 00 00       	sub    $0x2e68,%eax
    935a:	89 08                	mov    %ecx,(%eax)
    935c:	8b 55 dc             	mov    -0x24(%ebp),%edx
    935f:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    9364:	89 d1                	mov    %edx,%ecx
    9366:	29 c1                	sub    %eax,%ecx
    9368:	89 c8                	mov    %ecx,%eax
    936a:	d1 f8                	sar    %eax
    936c:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    9372:	89 c1                	mov    %eax,%ecx
    9374:	8b 55 cc             	mov    -0x34(%ebp),%edx
    9377:	89 d0                	mov    %edx,%eax
    9379:	01 c0                	add    %eax,%eax
    937b:	01 d0                	add    %edx,%eax
    937d:	c1 e0 02             	shl    $0x2,%eax
    9380:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    9383:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    9386:	2d 64 2e 00 00       	sub    $0x2e64,%eax
    938b:	89 08                	mov    %ecx,(%eax)
    938d:	8b 55 cc             	mov    -0x34(%ebp),%edx
    9390:	89 d0                	mov    %edx,%eax
    9392:	01 c0                	add    %eax,%eax
    9394:	01 d0                	add    %edx,%eax
    9396:	c1 e0 02             	shl    $0x2,%eax
    9399:	8d 55 e8             	lea    -0x18(%ebp),%edx
    939c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    939f:	2d 60 2e 00 00       	sub    $0x2e60,%eax
    93a4:	c7 00 04 00 00 00    	movl   $0x4,(%eax)
    93aa:	83 45 cc 01          	addl   $0x1,-0x34(%ebp)
    93ae:	8b 45 dc             	mov    -0x24(%ebp),%eax
    93b1:	8b 40 72             	mov    0x72(%eax),%eax
    93b4:	83 e0 02             	and    $0x2,%eax
    93b7:	85 c0                	test   %eax,%eax
    93b9:	74 74                	je     942f <dump_fd_graph+0x48d>
    93bb:	8b 55 dc             	mov    -0x24(%ebp),%edx
    93be:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    93c3:	89 d1                	mov    %edx,%ecx
    93c5:	29 c1                	sub    %eax,%ecx
    93c7:	89 c8                	mov    %ecx,%eax
    93c9:	d1 f8                	sar    %eax
    93cb:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    93d1:	89 c1                	mov    %eax,%ecx
    93d3:	8b 55 cc             	mov    -0x34(%ebp),%edx
    93d6:	89 d0                	mov    %edx,%eax
    93d8:	01 c0                	add    %eax,%eax
    93da:	01 d0                	add    %edx,%eax
    93dc:	c1 e0 02             	shl    $0x2,%eax
    93df:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    93e2:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    93e5:	2d 68 2e 00 00       	sub    $0x2e68,%eax
    93ea:	89 08                	mov    %ecx,(%eax)
    93ec:	8b 45 dc             	mov    -0x24(%ebp),%eax
    93ef:	8b 88 0a 02 00 00    	mov    0x20a(%eax),%ecx
    93f5:	8b 55 cc             	mov    -0x34(%ebp),%edx
    93f8:	89 d0                	mov    %edx,%eax
    93fa:	01 c0                	add    %eax,%eax
    93fc:	01 d0                	add    %edx,%eax
    93fe:	c1 e0 02             	shl    $0x2,%eax
    9401:	8d 55 e8             	lea    -0x18(%ebp),%edx
    9404:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9407:	2d 64 2e 00 00       	sub    $0x2e64,%eax
    940c:	89 08                	mov    %ecx,(%eax)
    940e:	8b 55 cc             	mov    -0x34(%ebp),%edx
    9411:	89 d0                	mov    %edx,%eax
    9413:	01 c0                	add    %eax,%eax
    9415:	01 d0                	add    %edx,%eax
    9417:	c1 e0 02             	shl    $0x2,%eax
    941a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
    941d:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    9420:	2d 60 2e 00 00       	sub    $0x2e60,%eax
    9425:	c7 00 02 00 00 00    	movl   $0x2,(%eax)
    942b:	83 45 cc 01          	addl   $0x1,-0x34(%ebp)
    942f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9432:	8b 40 34             	mov    0x34(%eax),%eax
    9435:	89 85 74 cf ff ff    	mov    %eax,-0x308c(%ebp)
    943b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    943e:	8b 80 1a 02 00 00    	mov    0x21a(%eax),%eax
    9444:	83 f8 3e             	cmp    $0x3e,%eax
    9447:	75 07                	jne    9450 <dump_fd_graph+0x4ae>
    9449:	b9 c2 1b 01 00       	mov    $0x11bc2,%ecx
    944e:	eb 05                	jmp    9455 <dump_fd_graph+0x4b3>
    9450:	b9 cc 1b 01 00       	mov    $0x11bcc,%ecx
    9455:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9458:	8b b8 1a 02 00 00    	mov    0x21a(%eax),%edi
    945e:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9461:	8b 40 72             	mov    0x72(%eax),%eax
    9464:	8b b4 85 80 f9 ff ff 	mov    -0x680(%ebp,%eax,4),%esi
    946b:	8b 45 dc             	mov    -0x24(%ebp),%eax
    946e:	8b 58 72             	mov    0x72(%eax),%ebx
    9471:	8b 45 dc             	mov    -0x24(%ebp),%eax
    9474:	83 c0 62             	add    $0x62,%eax
    9477:	89 85 70 cf ff ff    	mov    %eax,-0x3090(%ebp)
    947d:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9483:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9486:	01 c2                	add    %eax,%edx
    9488:	8b 85 74 cf ff ff    	mov    -0x308c(%ebp),%eax
    948e:	89 44 24 24          	mov    %eax,0x24(%esp)
    9492:	89 4c 24 20          	mov    %ecx,0x20(%esp)
    9496:	89 7c 24 1c          	mov    %edi,0x1c(%esp)
    949a:	89 74 24 18          	mov    %esi,0x18(%esp)
    949e:	89 5c 24 14          	mov    %ebx,0x14(%esp)
    94a2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    94a5:	89 44 24 10          	mov    %eax,0x10(%esp)
    94a9:	8b 8d 70 cf ff ff    	mov    -0x3090(%ebp),%ecx
    94af:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    94b3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    94b6:	89 44 24 08          	mov    %eax,0x8(%esp)
    94ba:	c7 44 24 04 d0 1b 01 	movl   $0x11bd0,0x4(%esp)
    94c1:	00 
    94c2:	89 14 24             	mov    %edx,(%esp)
    94c5:	e8 f9 6b 00 00       	call   100c3 <sprintf>
    94ca:	01 45 e0             	add    %eax,-0x20(%ebp)
    94cd:	c7 45 c4 03 00 00 00 	movl   $0x3,-0x3c(%ebp)
    94d4:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
    94db:	e9 da 00 00 00       	jmp    95ba <dump_fd_graph+0x618>
    94e0:	8b 45 dc             	mov    -0x24(%ebp),%eax
    94e3:	8b 55 c8             	mov    -0x38(%ebp),%edx
    94e6:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    94ec:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    94f0:	85 c0                	test   %eax,%eax
    94f2:	0f 84 bd 00 00 00    	je     95b5 <dump_fd_graph+0x613>
    94f8:	8b 45 dc             	mov    -0x24(%ebp),%eax
    94fb:	8b 55 c8             	mov    -0x38(%ebp),%edx
    94fe:	81 c2 8c 00 00 00    	add    $0x8c,%edx
    9504:	8b 44 90 06          	mov    0x6(%eax,%edx,4),%eax
    9508:	89 c2                	mov    %eax,%edx
    950a:	b8 60 e8 04 00       	mov    $0x4e860,%eax
    950f:	89 d3                	mov    %edx,%ebx
    9511:	29 c3                	sub    %eax,%ebx
    9513:	89 d8                	mov    %ebx,%eax
    9515:	c1 f8 02             	sar    $0x2,%eax
    9518:	69 c0 cd cc cc cc    	imul   $0xcccccccd,%eax,%eax
    951e:	89 45 9c             	mov    %eax,-0x64(%ebp)
    9521:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9527:	8b 45 e0             	mov    -0x20(%ebp),%eax
    952a:	01 c2                	add    %eax,%edx
    952c:	8b 45 9c             	mov    -0x64(%ebp),%eax
    952f:	89 44 24 10          	mov    %eax,0x10(%esp)
    9533:	8b 45 c8             	mov    -0x38(%ebp),%eax
    9536:	89 44 24 0c          	mov    %eax,0xc(%esp)
    953a:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    953d:	89 44 24 08          	mov    %eax,0x8(%esp)
    9541:	c7 44 24 04 29 1c 01 	movl   $0x11c29,0x4(%esp)
    9548:	00 
    9549:	89 14 24             	mov    %edx,(%esp)
    954c:	e8 72 6b 00 00       	call   100c3 <sprintf>
    9551:	01 45 e0             	add    %eax,-0x20(%ebp)
    9554:	8b 55 d4             	mov    -0x2c(%ebp),%edx
    9557:	89 d0                	mov    %edx,%eax
    9559:	01 c0                	add    %eax,%eax
    955b:	01 d0                	add    %edx,%eax
    955d:	c1 e0 02             	shl    $0x2,%eax
    9560:	8d 55 e8             	lea    -0x18(%ebp),%edx
    9563:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9566:	8d 90 98 e5 ff ff    	lea    -0x1a68(%eax),%edx
    956c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    956f:	89 02                	mov    %eax,(%edx)
    9571:	8b 55 d4             	mov    -0x2c(%ebp),%edx
    9574:	89 d0                	mov    %edx,%eax
    9576:	01 c0                	add    %eax,%eax
    9578:	01 d0                	add    %edx,%eax
    957a:	c1 e0 02             	shl    $0x2,%eax
    957d:	8d 4d e8             	lea    -0x18(%ebp),%ecx
    9580:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    9583:	8d 90 9c e5 ff ff    	lea    -0x1a64(%eax),%edx
    9589:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    958c:	89 02                	mov    %eax,(%edx)
    958e:	8b 55 d4             	mov    -0x2c(%ebp),%edx
    9591:	89 d0                	mov    %edx,%eax
    9593:	01 c0                	add    %eax,%eax
    9595:	01 d0                	add    %edx,%eax
    9597:	c1 e0 02             	shl    $0x2,%eax
    959a:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    959d:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    95a0:	8d 90 a0 e5 ff ff    	lea    -0x1a60(%eax),%edx
    95a6:	8b 45 9c             	mov    -0x64(%ebp),%eax
    95a9:	89 02                	mov    %eax,(%edx)
    95ab:	83 45 c4 01          	addl   $0x1,-0x3c(%ebp)
    95af:	83 45 d4 01          	addl   $0x1,-0x2c(%ebp)
    95b3:	eb 01                	jmp    95b6 <dump_fd_graph+0x614>
    95b5:	90                   	nop
    95b6:	83 45 c8 01          	addl   $0x1,-0x38(%ebp)
    95ba:	83 7d c8 3f          	cmpl   $0x3f,-0x38(%ebp)
    95be:	0f 8e 1c ff ff ff    	jle    94e0 <dump_fd_graph+0x53e>
    95c4:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    95ca:	8b 45 e0             	mov    -0x20(%ebp),%eax
    95cd:	8d 04 02             	lea    (%edx,%eax,1),%eax
    95d0:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    95d7:	00 
    95d8:	89 04 24             	mov    %eax,(%esp)
    95db:	e8 e3 6a 00 00       	call   100c3 <sprintf>
    95e0:	01 45 e0             	add    %eax,-0x20(%ebp)
    95e3:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    95e9:	8b 45 e0             	mov    -0x20(%ebp),%eax
    95ec:	8d 04 02             	lea    (%edx,%eax,1),%eax
    95ef:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    95f6:	00 
    95f7:	89 04 24             	mov    %eax,(%esp)
    95fa:	e8 c4 6a 00 00       	call   100c3 <sprintf>
    95ff:	01 45 e0             	add    %eax,-0x20(%ebp)
    9602:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9608:	8b 45 e0             	mov    -0x20(%ebp),%eax
    960b:	8d 04 02             	lea    (%edx,%eax,1),%eax
    960e:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    9615:	00 
    9616:	89 04 24             	mov    %eax,(%esp)
    9619:	e8 a5 6a 00 00       	call   100c3 <sprintf>
    961e:	01 45 e0             	add    %eax,-0x20(%ebp)
    9621:	eb 01                	jmp    9624 <dump_fd_graph+0x682>
    9623:	90                   	nop
    9624:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    9628:	81 45 dc 36 03 00 00 	addl   $0x336,-0x24(%ebp)
    962f:	83 7d e4 29          	cmpl   $0x29,-0x1c(%ebp)
    9633:	0f 8e b3 fc ff ff    	jle    92ec <dump_fd_graph+0x34a>
    9639:	c7 45 e4 34 00 00 00 	movl   $0x34,-0x1c(%ebp)
    9640:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9646:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9649:	01 c2                	add    %eax,%edx
    964b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    964e:	89 44 24 08          	mov    %eax,0x8(%esp)
    9652:	c7 44 24 04 5d 1c 01 	movl   $0x11c5d,0x4(%esp)
    9659:	00 
    965a:	89 14 24             	mov    %edx,(%esp)
    965d:	e8 61 6a 00 00       	call   100c3 <sprintf>
    9662:	01 45 e0             	add    %eax,-0x20(%ebp)
    9665:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    966b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    966e:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9671:	c7 44 24 04 6b 1c 01 	movl   $0x11c6b,0x4(%esp)
    9678:	00 
    9679:	89 04 24             	mov    %eax,(%esp)
    967c:	e8 42 6a 00 00       	call   100c3 <sprintf>
    9681:	01 45 e0             	add    %eax,-0x20(%ebp)
    9684:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    968a:	8b 45 e0             	mov    -0x20(%ebp),%eax
    968d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9690:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    9697:	00 
    9698:	89 04 24             	mov    %eax,(%esp)
    969b:	e8 23 6a 00 00       	call   100c3 <sprintf>
    96a0:	01 45 e0             	add    %eax,-0x20(%ebp)
    96a3:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    96a9:	8b 45 e0             	mov    -0x20(%ebp),%eax
    96ac:	8d 04 02             	lea    (%edx,%eax,1),%eax
    96af:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    96b6:	00 
    96b7:	89 04 24             	mov    %eax,(%esp)
    96ba:	e8 04 6a 00 00       	call   100c3 <sprintf>
    96bf:	01 45 e0             	add    %eax,-0x20(%ebp)
    96c2:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    96c8:	8b 45 e0             	mov    -0x20(%ebp),%eax
    96cb:	8d 04 02             	lea    (%edx,%eax,1),%eax
    96ce:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    96d5:	00 
    96d6:	89 04 24             	mov    %eax,(%esp)
    96d9:	e8 e5 69 00 00       	call   100c3 <sprintf>
    96de:	01 45 e0             	add    %eax,-0x20(%ebp)
    96e1:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    96e7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    96ea:	8d 04 02             	lea    (%edx,%eax,1),%eax
    96ed:	c7 44 24 04 86 1c 01 	movl   $0x11c86,0x4(%esp)
    96f4:	00 
    96f5:	89 04 24             	mov    %eax,(%esp)
    96f8:	e8 c6 69 00 00       	call   100c3 <sprintf>
    96fd:	01 45 e0             	add    %eax,-0x20(%ebp)
    9700:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9706:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9709:	8d 04 02             	lea    (%edx,%eax,1),%eax
    970c:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    9713:	00 
    9714:	89 04 24             	mov    %eax,(%esp)
    9717:	e8 a7 69 00 00       	call   100c3 <sprintf>
    971c:	01 45 e0             	add    %eax,-0x20(%ebp)
    971f:	c7 04 24 9e 1c 01 00 	movl   $0x11c9e,(%esp)
    9726:	e8 5f 66 00 00       	call   fd8a <printl>
    972b:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9731:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9734:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9737:	c7 44 24 04 a0 1c 01 	movl   $0x11ca0,0x4(%esp)
    973e:	00 
    973f:	89 04 24             	mov    %eax,(%esp)
    9742:	e8 7c 69 00 00       	call   100c3 <sprintf>
    9747:	01 45 e0             	add    %eax,-0x20(%ebp)
    974a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    9751:	e9 68 01 00 00       	jmp    98be <dump_fd_graph+0x91c>
    9756:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    9759:	89 d0                	mov    %edx,%eax
    975b:	c1 e0 02             	shl    $0x2,%eax
    975e:	01 d0                	add    %edx,%eax
    9760:	c1 e0 02             	shl    $0x2,%eax
    9763:	05 60 e8 04 00       	add    $0x4e860,%eax
    9768:	8b 40 0c             	mov    0xc(%eax),%eax
    976b:	85 c0                	test   %eax,%eax
    976d:	0f 84 46 01 00 00    	je     98b9 <dump_fd_graph+0x917>
    9773:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    9776:	89 d0                	mov    %edx,%eax
    9778:	c1 e0 02             	shl    $0x2,%eax
    977b:	01 d0                	add    %edx,%eax
    977d:	c1 e0 02             	shl    $0x2,%eax
    9780:	05 60 e8 04 00       	add    $0x4e860,%eax
    9785:	8b 40 0c             	mov    0xc(%eax),%eax
    9788:	89 c2                	mov    %eax,%edx
    978a:	b8 80 4b 01 00       	mov    $0x14b80,%eax
    978f:	89 d1                	mov    %edx,%ecx
    9791:	29 c1                	sub    %eax,%ecx
    9793:	89 c8                	mov    %ecx,%eax
    9795:	c1 f8 02             	sar    $0x2,%eax
    9798:	69 c0 a3 8b 2e ba    	imul   $0xba2e8ba3,%eax,%eax
    979e:	89 45 98             	mov    %eax,-0x68(%ebp)
    97a1:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    97a7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    97aa:	01 c2                	add    %eax,%edx
    97ac:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    97af:	89 44 24 08          	mov    %eax,0x8(%esp)
    97b3:	c7 44 24 04 b8 1c 01 	movl   $0x11cb8,0x4(%esp)
    97ba:	00 
    97bb:	89 14 24             	mov    %edx,(%esp)
    97be:	e8 00 69 00 00       	call   100c3 <sprintf>
    97c3:	01 45 e0             	add    %eax,-0x20(%ebp)
    97c6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    97c9:	89 d0                	mov    %edx,%eax
    97cb:	c1 e0 02             	shl    $0x2,%eax
    97ce:	01 d0                	add    %edx,%eax
    97d0:	c1 e0 02             	shl    $0x2,%eax
    97d3:	05 60 e8 04 00       	add    $0x4e860,%eax
    97d8:	8b 58 08             	mov    0x8(%eax),%ebx
    97db:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    97de:	89 d0                	mov    %edx,%eax
    97e0:	c1 e0 02             	shl    $0x2,%eax
    97e3:	01 d0                	add    %edx,%eax
    97e5:	c1 e0 02             	shl    $0x2,%eax
    97e8:	05 60 e8 04 00       	add    $0x4e860,%eax
    97ed:	8b 48 04             	mov    0x4(%eax),%ecx
    97f0:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    97f3:	89 d0                	mov    %edx,%eax
    97f5:	c1 e0 02             	shl    $0x2,%eax
    97f8:	01 d0                	add    %edx,%eax
    97fa:	c1 e0 02             	shl    $0x2,%eax
    97fd:	05 60 e8 04 00       	add    $0x4e860,%eax
    9802:	8b 00                	mov    (%eax),%eax
    9804:	8b 35 f0 32 01 00    	mov    0x132f0,%esi
    980a:	8b 55 e0             	mov    -0x20(%ebp),%edx
    980d:	01 d6                	add    %edx,%esi
    980f:	8b 55 98             	mov    -0x68(%ebp),%edx
    9812:	89 54 24 18          	mov    %edx,0x18(%esp)
    9816:	89 5c 24 14          	mov    %ebx,0x14(%esp)
    981a:	89 4c 24 10          	mov    %ecx,0x10(%esp)
    981e:	89 44 24 0c          	mov    %eax,0xc(%esp)
    9822:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9825:	89 44 24 08          	mov    %eax,0x8(%esp)
    9829:	c7 44 24 04 cc 1c 01 	movl   $0x11ccc,0x4(%esp)
    9830:	00 
    9831:	89 34 24             	mov    %esi,(%esp)
    9834:	e8 8a 68 00 00       	call   100c3 <sprintf>
    9839:	01 45 e0             	add    %eax,-0x20(%ebp)
    983c:	8b 45 d0             	mov    -0x30(%ebp),%eax
    983f:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    9842:	89 94 c5 80 dd ff ff 	mov    %edx,-0x2280(%ebp,%eax,8)
    9849:	8b 45 d0             	mov    -0x30(%ebp),%eax
    984c:	8b 55 98             	mov    -0x68(%ebp),%edx
    984f:	89 94 c5 84 dd ff ff 	mov    %edx,-0x227c(%ebp,%eax,8)
    9856:	83 45 d0 01          	addl   $0x1,-0x30(%ebp)
    985a:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9860:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9863:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9866:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    986d:	00 
    986e:	89 04 24             	mov    %eax,(%esp)
    9871:	e8 4d 68 00 00       	call   100c3 <sprintf>
    9876:	01 45 e0             	add    %eax,-0x20(%ebp)
    9879:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    987f:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9882:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9885:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    988c:	00 
    988d:	89 04 24             	mov    %eax,(%esp)
    9890:	e8 2e 68 00 00       	call   100c3 <sprintf>
    9895:	01 45 e0             	add    %eax,-0x20(%ebp)
    9898:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    989e:	8b 45 e0             	mov    -0x20(%ebp),%eax
    98a1:	8d 04 02             	lea    (%edx,%eax,1),%eax
    98a4:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    98ab:	00 
    98ac:	89 04 24             	mov    %eax,(%esp)
    98af:	e8 0f 68 00 00       	call   100c3 <sprintf>
    98b4:	01 45 e0             	add    %eax,-0x20(%ebp)
    98b7:	eb 01                	jmp    98ba <dump_fd_graph+0x918>
    98b9:	90                   	nop
    98ba:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    98be:	83 7d e4 3f          	cmpl   $0x3f,-0x1c(%ebp)
    98c2:	0f 8e 8e fe ff ff    	jle    9756 <dump_fd_graph+0x7b4>
    98c8:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    98ce:	8b 45 e0             	mov    -0x20(%ebp),%eax
    98d1:	8d 04 02             	lea    (%edx,%eax,1),%eax
    98d4:	c7 44 24 04 27 1d 01 	movl   $0x11d27,0x4(%esp)
    98db:	00 
    98dc:	89 04 24             	mov    %eax,(%esp)
    98df:	e8 df 67 00 00       	call   100c3 <sprintf>
    98e4:	01 45 e0             	add    %eax,-0x20(%ebp)
    98e7:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    98ed:	8b 45 e0             	mov    -0x20(%ebp),%eax
    98f0:	8d 04 02             	lea    (%edx,%eax,1),%eax
    98f3:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    98fa:	00 
    98fb:	89 04 24             	mov    %eax,(%esp)
    98fe:	e8 c0 67 00 00       	call   100c3 <sprintf>
    9903:	01 45 e0             	add    %eax,-0x20(%ebp)
    9906:	c7 04 24 3f 1d 01 00 	movl   $0x11d3f,(%esp)
    990d:	e8 78 64 00 00       	call   fd8a <printl>
    9912:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9918:	8b 45 e0             	mov    -0x20(%ebp),%eax
    991b:	8d 04 02             	lea    (%edx,%eax,1),%eax
    991e:	c7 44 24 04 41 1d 01 	movl   $0x11d41,0x4(%esp)
    9925:	00 
    9926:	89 04 24             	mov    %eax,(%esp)
    9929:	e8 95 67 00 00       	call   100c3 <sprintf>
    992e:	01 45 e0             	add    %eax,-0x20(%ebp)
    9931:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    9938:	e9 64 01 00 00       	jmp    9aa1 <dump_fd_graph+0xaff>
    993d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9940:	6b c0 2c             	imul   $0x2c,%eax,%eax
    9943:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    9948:	8b 40 04             	mov    0x4(%eax),%eax
    994b:	85 c0                	test   %eax,%eax
    994d:	0f 84 49 01 00 00    	je     9a9c <dump_fd_graph+0xafa>
    9953:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9959:	8b 45 e0             	mov    -0x20(%ebp),%eax
    995c:	01 c2                	add    %eax,%edx
    995e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9961:	89 44 24 08          	mov    %eax,0x8(%esp)
    9965:	c7 44 24 04 59 1d 01 	movl   $0x11d59,0x4(%esp)
    996c:	00 
    996d:	89 14 24             	mov    %edx,(%esp)
    9970:	e8 4e 67 00 00       	call   100c3 <sprintf>
    9975:	01 45 e0             	add    %eax,-0x20(%ebp)
    9978:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    997b:	6b c0 2c             	imul   $0x2c,%eax,%eax
    997e:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    9983:	8b 58 08             	mov    0x8(%eax),%ebx
    9986:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9989:	6b c0 2c             	imul   $0x2c,%eax,%eax
    998c:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    9991:	8b 40 04             	mov    0x4(%eax),%eax
    9994:	89 85 6c cf ff ff    	mov    %eax,-0x3094(%ebp)
    999a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    999d:	6b c0 2c             	imul   $0x2c,%eax,%eax
    99a0:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    99a5:	8b 00                	mov    (%eax),%eax
    99a7:	89 85 68 cf ff ff    	mov    %eax,-0x3098(%ebp)
    99ad:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    99b0:	6b c0 2c             	imul   $0x2c,%eax,%eax
    99b3:	05 80 4b 01 00       	add    $0x14b80,%eax
    99b8:	8b 40 0c             	mov    0xc(%eax),%eax
    99bb:	89 85 64 cf ff ff    	mov    %eax,-0x309c(%ebp)
    99c1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    99c4:	6b c0 2c             	imul   $0x2c,%eax,%eax
    99c7:	05 80 4b 01 00       	add    $0x14b80,%eax
    99cc:	8b 78 08             	mov    0x8(%eax),%edi
    99cf:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    99d2:	6b c0 2c             	imul   $0x2c,%eax,%eax
    99d5:	05 80 4b 01 00       	add    $0x14b80,%eax
    99da:	8b 70 04             	mov    0x4(%eax),%esi
    99dd:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    99e0:	6b c0 2c             	imul   $0x2c,%eax,%eax
    99e3:	05 80 4b 01 00       	add    $0x14b80,%eax
    99e8:	8b 08                	mov    (%eax),%ecx
    99ea:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    99f0:	8b 45 e0             	mov    -0x20(%ebp),%eax
    99f3:	01 c2                	add    %eax,%edx
    99f5:	89 5c 24 24          	mov    %ebx,0x24(%esp)
    99f9:	8b 9d 6c cf ff ff    	mov    -0x3094(%ebp),%ebx
    99ff:	89 5c 24 20          	mov    %ebx,0x20(%esp)
    9a03:	8b 85 68 cf ff ff    	mov    -0x3098(%ebp),%eax
    9a09:	89 44 24 1c          	mov    %eax,0x1c(%esp)
    9a0d:	8b 9d 64 cf ff ff    	mov    -0x309c(%ebp),%ebx
    9a13:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    9a17:	89 7c 24 14          	mov    %edi,0x14(%esp)
    9a1b:	89 74 24 10          	mov    %esi,0x10(%esp)
    9a1f:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    9a23:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9a26:	89 44 24 08          	mov    %eax,0x8(%esp)
    9a2a:	c7 44 24 04 68 1d 01 	movl   $0x11d68,0x4(%esp)
    9a31:	00 
    9a32:	89 14 24             	mov    %edx,(%esp)
    9a35:	e8 89 66 00 00       	call   100c3 <sprintf>
    9a3a:	01 45 e0             	add    %eax,-0x20(%ebp)
    9a3d:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9a43:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9a46:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9a49:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    9a50:	00 
    9a51:	89 04 24             	mov    %eax,(%esp)
    9a54:	e8 6a 66 00 00       	call   100c3 <sprintf>
    9a59:	01 45 e0             	add    %eax,-0x20(%ebp)
    9a5c:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9a62:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9a65:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9a68:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    9a6f:	00 
    9a70:	89 04 24             	mov    %eax,(%esp)
    9a73:	e8 4b 66 00 00       	call   100c3 <sprintf>
    9a78:	01 45 e0             	add    %eax,-0x20(%ebp)
    9a7b:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9a81:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9a84:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9a87:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    9a8e:	00 
    9a8f:	89 04 24             	mov    %eax,(%esp)
    9a92:	e8 2c 66 00 00       	call   100c3 <sprintf>
    9a97:	01 45 e0             	add    %eax,-0x20(%ebp)
    9a9a:	eb 01                	jmp    9a9d <dump_fd_graph+0xafb>
    9a9c:	90                   	nop
    9a9d:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    9aa1:	83 7d e4 3f          	cmpl   $0x3f,-0x1c(%ebp)
    9aa5:	0f 8e 92 fe ff ff    	jle    993d <dump_fd_graph+0x99b>
    9aab:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9ab1:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9ab4:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9ab7:	c7 44 24 04 fb 1d 01 	movl   $0x11dfb,0x4(%esp)
    9abe:	00 
    9abf:	89 04 24             	mov    %eax,(%esp)
    9ac2:	e8 fc 65 00 00       	call   100c3 <sprintf>
    9ac7:	01 45 e0             	add    %eax,-0x20(%ebp)
    9aca:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9ad0:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9ad3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9ad6:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    9add:	00 
    9ade:	89 04 24             	mov    %eax,(%esp)
    9ae1:	e8 dd 65 00 00       	call   100c3 <sprintf>
    9ae6:	01 45 e0             	add    %eax,-0x20(%ebp)
    9ae9:	c7 04 24 10 1e 01 00 	movl   $0x11e10,(%esp)
    9af0:	e8 95 62 00 00       	call   fd8a <printl>
    9af5:	e8 17 b5 ff ff       	call   5011 <enable_int>
    9afa:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9b00:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9b03:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9b06:	c7 44 24 04 12 1e 01 	movl   $0x11e12,0x4(%esp)
    9b0d:	00 
    9b0e:	89 04 24             	mov    %eax,(%esp)
    9b11:	e8 ad 65 00 00       	call   100c3 <sprintf>
    9b16:	01 45 e0             	add    %eax,-0x20(%ebp)
    9b19:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9b1f:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9b22:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9b25:	c7 44 24 04 2a 1e 01 	movl   $0x11e2a,0x4(%esp)
    9b2c:	00 
    9b2d:	89 04 24             	mov    %eax,(%esp)
    9b30:	e8 8e 65 00 00       	call   100c3 <sprintf>
    9b35:	01 45 e0             	add    %eax,-0x20(%ebp)
    9b38:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9b3e:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9b41:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9b44:	c7 44 24 04 3c 1e 01 	movl   $0x11e3c,0x4(%esp)
    9b4b:	00 
    9b4c:	89 04 24             	mov    %eax,(%esp)
    9b4f:	e8 6f 65 00 00       	call   100c3 <sprintf>
    9b54:	01 45 e0             	add    %eax,-0x20(%ebp)
    9b57:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
    9b5e:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
    9b65:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    9b6a:	8b 40 20             	mov    0x20(%eax),%eax
    9b6d:	89 04 24             	mov    %eax,(%esp)
    9b70:	e8 58 ca ff ff       	call   65cd <get_super_block>
    9b75:	89 45 94             	mov    %eax,-0x6c(%ebp)
    9b78:	8b 45 94             	mov    -0x6c(%ebp),%eax
    9b7b:	8b 40 0c             	mov    0xc(%eax),%eax
    9b7e:	83 c0 02             	add    $0x2,%eax
    9b81:	89 45 90             	mov    %eax,-0x70(%ebp)
    9b84:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    9b8b:	e9 e3 01 00 00       	jmp    9d73 <dump_fd_graph+0xdd1>
    9b90:	8b 35 f4 32 01 00    	mov    0x132f4,%esi
    9b96:	e8 0d 6a 00 00       	call   105a8 <getpid>
    9b9b:	89 c1                	mov    %eax,%ecx
    9b9d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9ba0:	8b 55 90             	mov    -0x70(%ebp),%edx
    9ba3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9ba6:	c1 e0 09             	shl    $0x9,%eax
    9ba9:	89 c2                	mov    %eax,%edx
    9bab:	c1 fa 1f             	sar    $0x1f,%edx
    9bae:	8b 1d 60 ed 04 00    	mov    0x4ed60,%ebx
    9bb4:	8b 5b 20             	mov    0x20(%ebx),%ebx
    9bb7:	89 74 24 18          	mov    %esi,0x18(%esp)
    9bbb:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    9bbf:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    9bc6:	00 
    9bc7:	89 44 24 08          	mov    %eax,0x8(%esp)
    9bcb:	89 54 24 0c          	mov    %edx,0xc(%esp)
    9bcf:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    9bd3:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    9bda:	e8 cf c7 ff ff       	call   63ae <rw_sector>
    9bdf:	a1 f4 32 01 00       	mov    0x132f4,%eax
    9be4:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    9beb:	00 
    9bec:	89 44 24 04          	mov    %eax,0x4(%esp)
    9bf0:	c7 04 24 40 42 01 00 	movl   $0x14240,(%esp)
    9bf7:	e8 f4 64 00 00       	call   100f0 <memcpy>
    9bfc:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
    9c03:	e9 5a 01 00 00       	jmp    9d62 <dump_fd_graph+0xdc0>
    9c08:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
    9c0f:	e9 40 01 00 00       	jmp    9d54 <dump_fd_graph+0xdb2>
    9c14:	83 7d c0 00          	cmpl   $0x0,-0x40(%ebp)
    9c18:	75 42                	jne    9c5c <dump_fd_graph+0xcba>
    9c1a:	8b 45 b8             	mov    -0x48(%ebp),%eax
    9c1d:	05 40 42 01 00       	add    $0x14240,%eax
    9c22:	0f b6 00             	movzbl (%eax),%eax
    9c25:	0f be d0             	movsbl %al,%edx
    9c28:	8b 45 c8             	mov    -0x38(%ebp),%eax
    9c2b:	89 d3                	mov    %edx,%ebx
    9c2d:	89 c1                	mov    %eax,%ecx
    9c2f:	d3 fb                	sar    %cl,%ebx
    9c31:	89 d8                	mov    %ebx,%eax
    9c33:	83 e0 01             	and    $0x1,%eax
    9c36:	84 c0                	test   %al,%al
    9c38:	0f 84 0e 01 00 00    	je     9d4c <dump_fd_graph+0xdaa>
    9c3e:	c7 45 c0 01 00 00 00 	movl   $0x1,-0x40(%ebp)
    9c45:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9c48:	c1 e0 09             	shl    $0x9,%eax
    9c4b:	03 45 b8             	add    -0x48(%ebp),%eax
    9c4e:	c1 e0 03             	shl    $0x3,%eax
    9c51:	03 45 c8             	add    -0x38(%ebp),%eax
    9c54:	89 45 bc             	mov    %eax,-0x44(%ebp)
    9c57:	e9 f4 00 00 00       	jmp    9d50 <dump_fd_graph+0xdae>
    9c5c:	8b 45 b8             	mov    -0x48(%ebp),%eax
    9c5f:	05 40 42 01 00       	add    $0x14240,%eax
    9c64:	0f b6 00             	movzbl (%eax),%eax
    9c67:	0f be d0             	movsbl %al,%edx
    9c6a:	8b 45 c8             	mov    -0x38(%ebp),%eax
    9c6d:	89 d3                	mov    %edx,%ebx
    9c6f:	89 c1                	mov    %eax,%ecx
    9c71:	d3 fb                	sar    %cl,%ebx
    9c73:	89 d8                	mov    %ebx,%eax
    9c75:	83 e0 01             	and    $0x1,%eax
    9c78:	84 c0                	test   %al,%al
    9c7a:	0f 85 cf 00 00 00    	jne    9d4f <dump_fd_graph+0xdad>
    9c80:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
    9c87:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9c8a:	c1 e0 09             	shl    $0x9,%eax
    9c8d:	03 45 b8             	add    -0x48(%ebp),%eax
    9c90:	c1 e0 03             	shl    $0x3,%eax
    9c93:	03 45 c8             	add    -0x38(%ebp),%eax
    9c96:	83 e8 01             	sub    $0x1,%eax
    9c99:	89 45 8c             	mov    %eax,-0x74(%ebp)
    9c9c:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9ca2:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9ca5:	01 c2                	add    %eax,%edx
    9ca7:	8b 45 bc             	mov    -0x44(%ebp),%eax
    9caa:	89 44 24 08          	mov    %eax,0x8(%esp)
    9cae:	c7 44 24 04 51 1e 01 	movl   $0x11e51,0x4(%esp)
    9cb5:	00 
    9cb6:	89 14 24             	mov    %edx,(%esp)
    9cb9:	e8 05 64 00 00       	call   100c3 <sprintf>
    9cbe:	01 45 e0             	add    %eax,-0x20(%ebp)
    9cc1:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9cc7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9cca:	01 c2                	add    %eax,%edx
    9ccc:	8b 45 8c             	mov    -0x74(%ebp),%eax
    9ccf:	89 44 24 0c          	mov    %eax,0xc(%esp)
    9cd3:	8b 45 bc             	mov    -0x44(%ebp),%eax
    9cd6:	89 44 24 08          	mov    %eax,0x8(%esp)
    9cda:	c7 44 24 04 63 1e 01 	movl   $0x11e63,0x4(%esp)
    9ce1:	00 
    9ce2:	89 14 24             	mov    %edx,(%esp)
    9ce5:	e8 d9 63 00 00       	call   100c3 <sprintf>
    9cea:	01 45 e0             	add    %eax,-0x20(%ebp)
    9ced:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9cf3:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9cf6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9cf9:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    9d00:	00 
    9d01:	89 04 24             	mov    %eax,(%esp)
    9d04:	e8 ba 63 00 00       	call   100c3 <sprintf>
    9d09:	01 45 e0             	add    %eax,-0x20(%ebp)
    9d0c:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9d12:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9d15:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9d18:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    9d1f:	00 
    9d20:	89 04 24             	mov    %eax,(%esp)
    9d23:	e8 9b 63 00 00       	call   100c3 <sprintf>
    9d28:	01 45 e0             	add    %eax,-0x20(%ebp)
    9d2b:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9d31:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9d34:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9d37:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    9d3e:	00 
    9d3f:	89 04 24             	mov    %eax,(%esp)
    9d42:	e8 7c 63 00 00       	call   100c3 <sprintf>
    9d47:	01 45 e0             	add    %eax,-0x20(%ebp)
    9d4a:	eb 04                	jmp    9d50 <dump_fd_graph+0xdae>
    9d4c:	90                   	nop
    9d4d:	eb 01                	jmp    9d50 <dump_fd_graph+0xdae>
    9d4f:	90                   	nop
    9d50:	83 45 c8 01          	addl   $0x1,-0x38(%ebp)
    9d54:	83 7d c8 07          	cmpl   $0x7,-0x38(%ebp)
    9d58:	0f 8e b6 fe ff ff    	jle    9c14 <dump_fd_graph+0xc72>
    9d5e:	83 45 b8 01          	addl   $0x1,-0x48(%ebp)
    9d62:	81 7d b8 ff 01 00 00 	cmpl   $0x1ff,-0x48(%ebp)
    9d69:	0f 8e 99 fe ff ff    	jle    9c08 <dump_fd_graph+0xc66>
    9d6f:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    9d73:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    9d76:	8b 45 94             	mov    -0x6c(%ebp),%eax
    9d79:	8b 40 10             	mov    0x10(%eax),%eax
    9d7c:	39 c2                	cmp    %eax,%edx
    9d7e:	0f 82 0c fe ff ff    	jb     9b90 <dump_fd_graph+0xbee>
    9d84:	8b 45 94             	mov    -0x6c(%ebp),%eax
    9d87:	8b 40 08             	mov    0x8(%eax),%eax
    9d8a:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    9d90:	8b 55 e0             	mov    -0x20(%ebp),%edx
    9d93:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    9d96:	89 44 24 08          	mov    %eax,0x8(%esp)
    9d9a:	c7 44 24 04 80 1e 01 	movl   $0x11e80,0x4(%esp)
    9da1:	00 
    9da2:	89 14 24             	mov    %edx,(%esp)
    9da5:	e8 19 63 00 00       	call   100c3 <sprintf>
    9daa:	01 45 e0             	add    %eax,-0x20(%ebp)
    9dad:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9db3:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9db6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9db9:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    9dc0:	00 
    9dc1:	89 04 24             	mov    %eax,(%esp)
    9dc4:	e8 fa 62 00 00       	call   100c3 <sprintf>
    9dc9:	01 45 e0             	add    %eax,-0x20(%ebp)
    9dcc:	c7 04 24 a9 1e 01 00 	movl   $0x11ea9,(%esp)
    9dd3:	e8 b2 5f 00 00       	call   fd8a <printl>
    9dd8:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9dde:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9de1:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9de4:	c7 44 24 04 ab 1e 01 	movl   $0x11eab,0x4(%esp)
    9deb:	00 
    9dec:	89 04 24             	mov    %eax,(%esp)
    9def:	e8 cf 62 00 00       	call   100c3 <sprintf>
    9df4:	01 45 e0             	add    %eax,-0x20(%ebp)
    9df7:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9dfd:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9e00:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9e03:	c7 44 24 04 2a 1e 01 	movl   $0x11e2a,0x4(%esp)
    9e0a:	00 
    9e0b:	89 04 24             	mov    %eax,(%esp)
    9e0e:	e8 b0 62 00 00       	call   100c3 <sprintf>
    9e13:	01 45 e0             	add    %eax,-0x20(%ebp)
    9e16:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9e1c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9e1f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9e22:	c7 44 24 04 3c 1e 01 	movl   $0x11e3c,0x4(%esp)
    9e29:	00 
    9e2a:	89 04 24             	mov    %eax,(%esp)
    9e2d:	e8 91 62 00 00       	call   100c3 <sprintf>
    9e32:	01 45 e0             	add    %eax,-0x20(%ebp)
    9e35:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9e3b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9e3e:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9e41:	c7 44 24 04 c3 1e 01 	movl   $0x11ec3,0x4(%esp)
    9e48:	00 
    9e49:	89 04 24             	mov    %eax,(%esp)
    9e4c:	e8 72 62 00 00       	call   100c3 <sprintf>
    9e51:	01 45 e0             	add    %eax,-0x20(%ebp)
    9e54:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9e5a:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9e5d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9e60:	c7 44 24 04 cf 1e 01 	movl   $0x11ecf,0x4(%esp)
    9e67:	00 
    9e68:	89 04 24             	mov    %eax,(%esp)
    9e6b:	e8 53 62 00 00       	call   100c3 <sprintf>
    9e70:	01 45 e0             	add    %eax,-0x20(%ebp)
    9e73:	c7 45 88 02 00 00 00 	movl   $0x2,-0x78(%ebp)
    9e7a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    9e81:	e9 f0 00 00 00       	jmp    9f76 <dump_fd_graph+0xfd4>
    9e86:	8b 35 f4 32 01 00    	mov    0x132f4,%esi
    9e8c:	e8 17 67 00 00       	call   105a8 <getpid>
    9e91:	89 c1                	mov    %eax,%ecx
    9e93:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9e96:	8b 55 88             	mov    -0x78(%ebp),%edx
    9e99:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9e9c:	c1 e0 09             	shl    $0x9,%eax
    9e9f:	89 c2                	mov    %eax,%edx
    9ea1:	c1 fa 1f             	sar    $0x1f,%edx
    9ea4:	8b 1d 60 ed 04 00    	mov    0x4ed60,%ebx
    9eaa:	8b 5b 20             	mov    0x20(%ebx),%ebx
    9ead:	89 74 24 18          	mov    %esi,0x18(%esp)
    9eb1:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    9eb5:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    9ebc:	00 
    9ebd:	89 44 24 08          	mov    %eax,0x8(%esp)
    9ec1:	89 54 24 0c          	mov    %edx,0xc(%esp)
    9ec5:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    9ec9:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    9ed0:	e8 d9 c4 ff ff       	call   63ae <rw_sector>
    9ed5:	a1 f4 32 01 00       	mov    0x132f4,%eax
    9eda:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    9ee1:	00 
    9ee2:	89 44 24 04          	mov    %eax,0x4(%esp)
    9ee6:	c7 04 24 40 42 01 00 	movl   $0x14240,(%esp)
    9eed:	e8 fe 61 00 00       	call   100f0 <memcpy>
    9ef2:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
    9ef9:	eb 6e                	jmp    9f69 <dump_fd_graph+0xfc7>
    9efb:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
    9f02:	eb 5b                	jmp    9f5f <dump_fd_graph+0xfbd>
    9f04:	8b 45 b8             	mov    -0x48(%ebp),%eax
    9f07:	05 40 42 01 00       	add    $0x14240,%eax
    9f0c:	0f b6 00             	movzbl (%eax),%eax
    9f0f:	0f be d0             	movsbl %al,%edx
    9f12:	8b 45 c8             	mov    -0x38(%ebp),%eax
    9f15:	89 d3                	mov    %edx,%ebx
    9f17:	89 c1                	mov    %eax,%ecx
    9f19:	d3 fb                	sar    %cl,%ebx
    9f1b:	89 d8                	mov    %ebx,%eax
    9f1d:	83 e0 01             	and    $0x1,%eax
    9f20:	84 c0                	test   %al,%al
    9f22:	74 37                	je     9f5b <dump_fd_graph+0xfb9>
    9f24:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    9f27:	c1 e0 09             	shl    $0x9,%eax
    9f2a:	03 45 b8             	add    -0x48(%ebp),%eax
    9f2d:	c1 e0 03             	shl    $0x3,%eax
    9f30:	03 45 c8             	add    -0x38(%ebp),%eax
    9f33:	89 45 84             	mov    %eax,-0x7c(%ebp)
    9f36:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9f3c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9f3f:	01 c2                	add    %eax,%edx
    9f41:	8b 45 84             	mov    -0x7c(%ebp),%eax
    9f44:	89 44 24 08          	mov    %eax,0x8(%esp)
    9f48:	c7 44 24 04 e4 1e 01 	movl   $0x11ee4,0x4(%esp)
    9f4f:	00 
    9f50:	89 14 24             	mov    %edx,(%esp)
    9f53:	e8 6b 61 00 00       	call   100c3 <sprintf>
    9f58:	01 45 e0             	add    %eax,-0x20(%ebp)
    9f5b:	83 45 c8 01          	addl   $0x1,-0x38(%ebp)
    9f5f:	83 7d c8 07          	cmpl   $0x7,-0x38(%ebp)
    9f63:	7e 9f                	jle    9f04 <dump_fd_graph+0xf62>
    9f65:	83 45 b8 01          	addl   $0x1,-0x48(%ebp)
    9f69:	81 7d b8 ff 01 00 00 	cmpl   $0x1ff,-0x48(%ebp)
    9f70:	7e 89                	jle    9efb <dump_fd_graph+0xf59>
    9f72:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    9f76:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    9f79:	8b 45 94             	mov    -0x6c(%ebp),%eax
    9f7c:	8b 40 0c             	mov    0xc(%eax),%eax
    9f7f:	39 c2                	cmp    %eax,%edx
    9f81:	0f 82 ff fe ff ff    	jb     9e86 <dump_fd_graph+0xee4>
    9f87:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9f8d:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9f90:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9f93:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    9f9a:	00 
    9f9b:	89 04 24             	mov    %eax,(%esp)
    9f9e:	e8 20 61 00 00       	call   100c3 <sprintf>
    9fa3:	01 45 e0             	add    %eax,-0x20(%ebp)
    9fa6:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9fac:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9faf:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9fb2:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    9fb9:	00 
    9fba:	89 04 24             	mov    %eax,(%esp)
    9fbd:	e8 01 61 00 00       	call   100c3 <sprintf>
    9fc2:	01 45 e0             	add    %eax,-0x20(%ebp)
    9fc5:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9fcb:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9fce:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9fd1:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    9fd8:	00 
    9fd9:	89 04 24             	mov    %eax,(%esp)
    9fdc:	e8 e2 60 00 00       	call   100c3 <sprintf>
    9fe1:	01 45 e0             	add    %eax,-0x20(%ebp)
    9fe4:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    9fea:	8b 45 e0             	mov    -0x20(%ebp),%eax
    9fed:	8d 04 02             	lea    (%edx,%eax,1),%eax
    9ff0:	c7 44 24 04 eb 1e 01 	movl   $0x11eeb,0x4(%esp)
    9ff7:	00 
    9ff8:	89 04 24             	mov    %eax,(%esp)
    9ffb:	e8 c3 60 00 00       	call   100c3 <sprintf>
    a000:	01 45 e0             	add    %eax,-0x20(%ebp)
    a003:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a009:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a00c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a00f:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    a016:	00 
    a017:	89 04 24             	mov    %eax,(%esp)
    a01a:	e8 a4 60 00 00       	call   100c3 <sprintf>
    a01f:	01 45 e0             	add    %eax,-0x20(%ebp)
    a022:	c7 04 24 03 1f 01 00 	movl   $0x11f03,(%esp)
    a029:	e8 5c 5d 00 00       	call   fd8a <printl>
    a02e:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a034:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a037:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a03a:	c7 44 24 04 05 1f 01 	movl   $0x11f05,0x4(%esp)
    a041:	00 
    a042:	89 04 24             	mov    %eax,(%esp)
    a045:	e8 79 60 00 00       	call   100c3 <sprintf>
    a04a:	01 45 e0             	add    %eax,-0x20(%ebp)
    a04d:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a053:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a056:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a059:	c7 44 24 04 2a 1e 01 	movl   $0x11e2a,0x4(%esp)
    a060:	00 
    a061:	89 04 24             	mov    %eax,(%esp)
    a064:	e8 5a 60 00 00       	call   100c3 <sprintf>
    a069:	01 45 e0             	add    %eax,-0x20(%ebp)
    a06c:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a072:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a075:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a078:	c7 44 24 04 3c 1e 01 	movl   $0x11e3c,0x4(%esp)
    a07f:	00 
    a080:	89 04 24             	mov    %eax,(%esp)
    a083:	e8 3b 60 00 00       	call   100c3 <sprintf>
    a088:	01 45 e0             	add    %eax,-0x20(%ebp)
    a08b:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    a090:	8b 40 20             	mov    0x20(%eax),%eax
    a093:	89 04 24             	mov    %eax,(%esp)
    a096:	e8 32 c5 ff ff       	call   65cd <get_super_block>
    a09b:	89 45 94             	mov    %eax,-0x6c(%ebp)
    a09e:	8b 45 94             	mov    -0x6c(%ebp),%eax
    a0a1:	8b 50 0c             	mov    0xc(%eax),%edx
    a0a4:	8b 45 94             	mov    -0x6c(%ebp),%eax
    a0a7:	8b 40 10             	mov    0x10(%eax),%eax
    a0aa:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a0ad:	83 c0 02             	add    $0x2,%eax
    a0b0:	89 45 80             	mov    %eax,-0x80(%ebp)
    a0b3:	8b 35 f4 32 01 00    	mov    0x132f4,%esi
    a0b9:	e8 ea 64 00 00       	call   105a8 <getpid>
    a0be:	89 c1                	mov    %eax,%ecx
    a0c0:	8b 45 80             	mov    -0x80(%ebp),%eax
    a0c3:	c1 e0 09             	shl    $0x9,%eax
    a0c6:	89 c2                	mov    %eax,%edx
    a0c8:	c1 fa 1f             	sar    $0x1f,%edx
    a0cb:	8b 1d 60 ed 04 00    	mov    0x4ed60,%ebx
    a0d1:	8b 5b 20             	mov    0x20(%ebx),%ebx
    a0d4:	89 74 24 18          	mov    %esi,0x18(%esp)
    a0d8:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    a0dc:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    a0e3:	00 
    a0e4:	89 44 24 08          	mov    %eax,0x8(%esp)
    a0e8:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a0ec:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    a0f0:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    a0f7:	e8 b2 c2 ff ff       	call   63ae <rw_sector>
    a0fc:	a1 f4 32 01 00       	mov    0x132f4,%eax
    a101:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    a108:	00 
    a109:	89 44 24 04          	mov    %eax,0x4(%esp)
    a10d:	c7 04 24 40 42 01 00 	movl   $0x14240,(%esp)
    a114:	e8 d7 5f 00 00       	call   100f0 <memcpy>
    a119:	c7 45 b4 40 42 01 00 	movl   $0x14240,-0x4c(%ebp)
    a120:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a127:	e9 72 02 00 00       	jmp    a39e <dump_fd_graph+0x13fc>
    a12c:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    a12f:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
    a135:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a13b:	8b 40 08             	mov    0x8(%eax),%eax
    a13e:	85 c0                	test   %eax,%eax
    a140:	0f 84 4f 02 00 00    	je     a395 <dump_fd_graph+0x13f3>
    a146:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a14c:	8b 00                	mov    (%eax),%eax
    a14e:	85 c0                	test   %eax,%eax
    a150:	0f 84 43 01 00 00    	je     a299 <dump_fd_graph+0x12f7>
    a156:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a15c:	8b 50 08             	mov    0x8(%eax),%edx
    a15f:	8b 45 94             	mov    -0x6c(%ebp),%eax
    a162:	8b 40 14             	mov    0x14(%eax),%eax
    a165:	39 c2                	cmp    %eax,%edx
    a167:	73 23                	jae    a18c <dump_fd_graph+0x11ea>
    a169:	8b 45 94             	mov    -0x6c(%ebp),%eax
    a16c:	8b 50 14             	mov    0x14(%eax),%edx
    a16f:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a175:	8b 40 08             	mov    0x8(%eax),%eax
    a178:	89 54 24 08          	mov    %edx,0x8(%esp)
    a17c:	89 44 24 04          	mov    %eax,0x4(%esp)
    a180:	c7 04 24 1d 1f 01 00 	movl   $0x11f1d,(%esp)
    a187:	e8 ab 7d ff ff       	call   1f37 <panic>
    a18c:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a192:	8b 50 08             	mov    0x8(%eax),%edx
    a195:	8b 45 94             	mov    -0x6c(%ebp),%eax
    a198:	8b 40 14             	mov    0x14(%eax),%eax
    a19b:	89 d1                	mov    %edx,%ecx
    a19d:	29 c1                	sub    %eax,%ecx
    a19f:	89 c8                	mov    %ecx,%eax
    a1a1:	83 c0 01             	add    $0x1,%eax
    a1a4:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
    a1aa:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a1b0:	8b 50 0c             	mov    0xc(%eax),%edx
    a1b3:	8b 85 78 ff ff ff    	mov    -0x88(%ebp),%eax
    a1b9:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a1bc:	83 e8 01             	sub    $0x1,%eax
    a1bf:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
    a1c5:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a1c8:	8d 50 01             	lea    0x1(%eax),%edx
    a1cb:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a1d1:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a1d4:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    a1d7:	89 54 24 08          	mov    %edx,0x8(%esp)
    a1db:	c7 44 24 04 39 1f 01 	movl   $0x11f39,0x4(%esp)
    a1e2:	00 
    a1e3:	89 04 24             	mov    %eax,(%esp)
    a1e6:	e8 d8 5e 00 00       	call   100c3 <sprintf>
    a1eb:	01 45 e0             	add    %eax,-0x20(%ebp)
    a1ee:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a1f4:	8b 40 04             	mov    0x4(%eax),%eax
    a1f7:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a1fa:	8d 5a 01             	lea    0x1(%edx),%ebx
    a1fd:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a203:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a206:	01 d1                	add    %edx,%ecx
    a208:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
    a20e:	89 54 24 14          	mov    %edx,0x14(%esp)
    a212:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
    a218:	89 54 24 10          	mov    %edx,0x10(%esp)
    a21c:	89 44 24 0c          	mov    %eax,0xc(%esp)
    a220:	89 5c 24 08          	mov    %ebx,0x8(%esp)
    a224:	c7 44 24 04 50 1f 01 	movl   $0x11f50,0x4(%esp)
    a22b:	00 
    a22c:	89 0c 24             	mov    %ecx,(%esp)
    a22f:	e8 8f 5e 00 00       	call   100c3 <sprintf>
    a234:	01 45 e0             	add    %eax,-0x20(%ebp)
    a237:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a23d:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a240:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a243:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    a24a:	00 
    a24b:	89 04 24             	mov    %eax,(%esp)
    a24e:	e8 70 5e 00 00       	call   100c3 <sprintf>
    a253:	01 45 e0             	add    %eax,-0x20(%ebp)
    a256:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a25c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a25f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a262:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    a269:	00 
    a26a:	89 04 24             	mov    %eax,(%esp)
    a26d:	e8 51 5e 00 00       	call   100c3 <sprintf>
    a272:	01 45 e0             	add    %eax,-0x20(%ebp)
    a275:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a27b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a27e:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a281:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    a288:	00 
    a289:	89 04 24             	mov    %eax,(%esp)
    a28c:	e8 32 5e 00 00       	call   100c3 <sprintf>
    a291:	01 45 e0             	add    %eax,-0x20(%ebp)
    a294:	e9 fd 00 00 00       	jmp    a396 <dump_fd_graph+0x13f4>
    a299:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a29f:	8b 40 08             	mov    0x8(%eax),%eax
    a2a2:	c1 e8 08             	shr    $0x8,%eax
    a2a5:	25 ff 00 00 00       	and    $0xff,%eax
    a2aa:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
    a2b0:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a2b6:	8b 40 08             	mov    0x8(%eax),%eax
    a2b9:	25 ff 00 00 00       	and    $0xff,%eax
    a2be:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
    a2c4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a2c7:	8d 50 01             	lea    0x1(%eax),%edx
    a2ca:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a2d0:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a2d3:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    a2d6:	89 54 24 08          	mov    %edx,0x8(%esp)
    a2da:	c7 44 24 04 39 1f 01 	movl   $0x11f39,0x4(%esp)
    a2e1:	00 
    a2e2:	89 04 24             	mov    %eax,(%esp)
    a2e5:	e8 d9 5d 00 00       	call   100c3 <sprintf>
    a2ea:	01 45 e0             	add    %eax,-0x20(%ebp)
    a2ed:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
    a2f3:	8b 40 04             	mov    0x4(%eax),%eax
    a2f6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a2f9:	8d 5a 01             	lea    0x1(%edx),%ebx
    a2fc:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a302:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a305:	01 d1                	add    %edx,%ecx
    a307:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
    a30d:	89 54 24 14          	mov    %edx,0x14(%esp)
    a311:	8b 95 78 ff ff ff    	mov    -0x88(%ebp),%edx
    a317:	89 54 24 10          	mov    %edx,0x10(%esp)
    a31b:	89 44 24 0c          	mov    %eax,0xc(%esp)
    a31f:	89 5c 24 08          	mov    %ebx,0x8(%esp)
    a323:	c7 44 24 04 88 1f 01 	movl   $0x11f88,0x4(%esp)
    a32a:	00 
    a32b:	89 0c 24             	mov    %ecx,(%esp)
    a32e:	e8 90 5d 00 00       	call   100c3 <sprintf>
    a333:	01 45 e0             	add    %eax,-0x20(%ebp)
    a336:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a33c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a33f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a342:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    a349:	00 
    a34a:	89 04 24             	mov    %eax,(%esp)
    a34d:	e8 71 5d 00 00       	call   100c3 <sprintf>
    a352:	01 45 e0             	add    %eax,-0x20(%ebp)
    a355:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a35b:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a35e:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a361:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    a368:	00 
    a369:	89 04 24             	mov    %eax,(%esp)
    a36c:	e8 52 5d 00 00       	call   100c3 <sprintf>
    a371:	01 45 e0             	add    %eax,-0x20(%ebp)
    a374:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a37a:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a37d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a380:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    a387:	00 
    a388:	89 04 24             	mov    %eax,(%esp)
    a38b:	e8 33 5d 00 00       	call   100c3 <sprintf>
    a390:	01 45 e0             	add    %eax,-0x20(%ebp)
    a393:	eb 01                	jmp    a396 <dump_fd_graph+0x13f4>
    a395:	90                   	nop
    a396:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a39a:	83 45 b4 20          	addl   $0x20,-0x4c(%ebp)
    a39e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a3a1:	83 f8 0a             	cmp    $0xa,%eax
    a3a4:	0f 86 82 fd ff ff    	jbe    a12c <dump_fd_graph+0x118a>
    a3aa:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a3b0:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a3b3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a3b6:	c7 44 24 04 c4 1f 01 	movl   $0x11fc4,0x4(%esp)
    a3bd:	00 
    a3be:	89 04 24             	mov    %eax,(%esp)
    a3c1:	e8 fd 5c 00 00       	call   100c3 <sprintf>
    a3c6:	01 45 e0             	add    %eax,-0x20(%ebp)
    a3c9:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a3cf:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a3d2:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a3d5:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    a3dc:	00 
    a3dd:	89 04 24             	mov    %eax,(%esp)
    a3e0:	e8 de 5c 00 00       	call   100c3 <sprintf>
    a3e5:	01 45 e0             	add    %eax,-0x20(%ebp)
    a3e8:	c7 04 24 de 1f 01 00 	movl   $0x11fde,(%esp)
    a3ef:	e8 96 59 00 00       	call   fd8a <printl>
    a3f4:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a3fa:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a3fd:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a400:	c7 44 24 04 e0 1f 01 	movl   $0x11fe0,0x4(%esp)
    a407:	00 
    a408:	89 04 24             	mov    %eax,(%esp)
    a40b:	e8 b3 5c 00 00       	call   100c3 <sprintf>
    a410:	01 45 e0             	add    %eax,-0x20(%ebp)
    a413:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a419:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a41c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a41f:	c7 44 24 04 2a 1e 01 	movl   $0x11e2a,0x4(%esp)
    a426:	00 
    a427:	89 04 24             	mov    %eax,(%esp)
    a42a:	e8 94 5c 00 00       	call   100c3 <sprintf>
    a42f:	01 45 e0             	add    %eax,-0x20(%ebp)
    a432:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a438:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a43b:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a43e:	c7 44 24 04 3c 1e 01 	movl   $0x11e3c,0x4(%esp)
    a445:	00 
    a446:	89 04 24             	mov    %eax,(%esp)
    a449:	e8 75 5c 00 00       	call   100c3 <sprintf>
    a44e:	01 45 e0             	add    %eax,-0x20(%ebp)
    a451:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    a456:	8b 40 20             	mov    0x20(%eax),%eax
    a459:	89 04 24             	mov    %eax,(%esp)
    a45c:	e8 6c c1 ff ff       	call   65cd <get_super_block>
    a461:	89 45 94             	mov    %eax,-0x6c(%ebp)
    a464:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    a469:	8b 40 08             	mov    0x8(%eax),%eax
    a46c:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
    a472:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    a477:	8b 40 04             	mov    0x4(%eax),%eax
    a47a:	05 ff 01 00 00       	add    $0x1ff,%eax
    a47f:	c1 e8 09             	shr    $0x9,%eax
    a482:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
    a488:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    a48d:	8b 40 04             	mov    0x4(%eax),%eax
    a490:	c1 e8 04             	shr    $0x4,%eax
    a493:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
    a499:	c7 85 64 ff ff ff 00 	movl   $0x0,-0x9c(%ebp)
    a4a0:	00 00 00 
    a4a3:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a4aa:	e9 ce 01 00 00       	jmp    a67d <dump_fd_graph+0x16db>
    a4af:	8b 35 f4 32 01 00    	mov    0x132f4,%esi
    a4b5:	e8 ee 60 00 00       	call   105a8 <getpid>
    a4ba:	89 c1                	mov    %eax,%ecx
    a4bc:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a4bf:	8b 95 70 ff ff ff    	mov    -0x90(%ebp),%edx
    a4c5:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a4c8:	c1 e0 09             	shl    $0x9,%eax
    a4cb:	89 c2                	mov    %eax,%edx
    a4cd:	c1 fa 1f             	sar    $0x1f,%edx
    a4d0:	8b 1d 60 ed 04 00    	mov    0x4ed60,%ebx
    a4d6:	8b 5b 20             	mov    0x20(%ebx),%ebx
    a4d9:	89 74 24 18          	mov    %esi,0x18(%esp)
    a4dd:	89 4c 24 14          	mov    %ecx,0x14(%esp)
    a4e1:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    a4e8:	00 
    a4e9:	89 44 24 08          	mov    %eax,0x8(%esp)
    a4ed:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a4f1:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    a4f5:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    a4fc:	e8 ad be ff ff       	call   63ae <rw_sector>
    a501:	a1 f4 32 01 00       	mov    0x132f4,%eax
    a506:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    a50d:	00 
    a50e:	89 44 24 04          	mov    %eax,0x4(%esp)
    a512:	c7 04 24 40 42 01 00 	movl   $0x14240,(%esp)
    a519:	e8 d2 5b 00 00       	call   100f0 <memcpy>
    a51e:	c7 45 b0 40 42 01 00 	movl   $0x14240,-0x50(%ebp)
    a525:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
    a52c:	e9 2e 01 00 00       	jmp    a65f <dump_fd_graph+0x16bd>
    a531:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a534:	8b 00                	mov    (%eax),%eax
    a536:	85 c0                	test   %eax,%eax
    a538:	0f 84 19 01 00 00    	je     a657 <dump_fd_graph+0x16b5>
    a53e:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a541:	83 c0 04             	add    $0x4,%eax
    a544:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    a54b:	00 
    a54c:	89 44 24 04          	mov    %eax,0x4(%esp)
    a550:	8d 85 03 fa ff ff    	lea    -0x5fd(%ebp),%eax
    a556:	89 04 24             	mov    %eax,(%esp)
    a559:	e8 92 5b 00 00       	call   100f0 <memcpy>
    a55e:	0f b6 85 03 fa ff ff 	movzbl -0x5fd(%ebp),%eax
    a565:	3c 2e                	cmp    $0x2e,%al
    a567:	75 07                	jne    a570 <dump_fd_graph+0x15ce>
    a569:	c6 85 03 fa ff ff 2f 	movb   $0x2f,-0x5fd(%ebp)
    a570:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a573:	8b 00                	mov    (%eax),%eax
    a575:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a57b:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a57e:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    a581:	89 44 24 08          	mov    %eax,0x8(%esp)
    a585:	c7 44 24 04 f8 1f 01 	movl   $0x11ff8,0x4(%esp)
    a58c:	00 
    a58d:	89 14 24             	mov    %edx,(%esp)
    a590:	e8 2e 5b 00 00       	call   100c3 <sprintf>
    a595:	01 45 e0             	add    %eax,-0x20(%ebp)
    a598:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a59b:	8b 00                	mov    (%eax),%eax
    a59d:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a5a3:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a5a6:	01 d1                	add    %edx,%ecx
    a5a8:	8d 95 03 fa ff ff    	lea    -0x5fd(%ebp),%edx
    a5ae:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a5b2:	89 44 24 08          	mov    %eax,0x8(%esp)
    a5b6:	c7 44 24 04 0c 20 01 	movl   $0x1200c,0x4(%esp)
    a5bd:	00 
    a5be:	89 0c 24             	mov    %ecx,(%esp)
    a5c1:	e8 fd 5a 00 00       	call   100c3 <sprintf>
    a5c6:	01 45 e0             	add    %eax,-0x20(%ebp)
    a5c9:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a5cf:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a5d2:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a5d5:	c7 44 24 04 3e 1c 01 	movl   $0x11c3e,0x4(%esp)
    a5dc:	00 
    a5dd:	89 04 24             	mov    %eax,(%esp)
    a5e0:	e8 de 5a 00 00       	call   100c3 <sprintf>
    a5e5:	01 45 e0             	add    %eax,-0x20(%ebp)
    a5e8:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a5ee:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a5f1:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a5f4:	c7 44 24 04 42 1c 01 	movl   $0x11c42,0x4(%esp)
    a5fb:	00 
    a5fc:	89 04 24             	mov    %eax,(%esp)
    a5ff:	e8 bf 5a 00 00       	call   100c3 <sprintf>
    a604:	01 45 e0             	add    %eax,-0x20(%ebp)
    a607:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a60d:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a610:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a613:	c7 44 24 04 57 1c 01 	movl   $0x11c57,0x4(%esp)
    a61a:	00 
    a61b:	89 04 24             	mov    %eax,(%esp)
    a61e:	e8 a0 5a 00 00       	call   100c3 <sprintf>
    a623:	01 45 e0             	add    %eax,-0x20(%ebp)
    a626:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a629:	8b 10                	mov    (%eax),%edx
    a62b:	8b 45 b0             	mov    -0x50(%ebp),%eax
    a62e:	8b 00                	mov    (%eax),%eax
    a630:	8b 1d f0 32 01 00    	mov    0x132f0,%ebx
    a636:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    a639:	8d 0c 0b             	lea    (%ebx,%ecx,1),%ecx
    a63c:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a640:	89 44 24 08          	mov    %eax,0x8(%esp)
    a644:	c7 44 24 04 28 20 01 	movl   $0x12028,0x4(%esp)
    a64b:	00 
    a64c:	89 0c 24             	mov    %ecx,(%esp)
    a64f:	e8 6f 5a 00 00       	call   100c3 <sprintf>
    a654:	01 45 e0             	add    %eax,-0x20(%ebp)
    a657:	83 45 b8 01          	addl   $0x1,-0x48(%ebp)
    a65b:	83 45 b0 10          	addl   $0x10,-0x50(%ebp)
    a65f:	8b 45 b8             	mov    -0x48(%ebp),%eax
    a662:	83 f8 1f             	cmp    $0x1f,%eax
    a665:	0f 86 c6 fe ff ff    	jbe    a531 <dump_fd_graph+0x158f>
    a66b:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
    a671:	3b 85 68 ff ff ff    	cmp    -0x98(%ebp),%eax
    a677:	7f 15                	jg     a68e <dump_fd_graph+0x16ec>
    a679:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a67d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a680:	3b 85 6c ff ff ff    	cmp    -0x94(%ebp),%eax
    a686:	0f 8c 23 fe ff ff    	jl     a4af <dump_fd_graph+0x150d>
    a68c:	eb 01                	jmp    a68f <dump_fd_graph+0x16ed>
    a68e:	90                   	nop
    a68f:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a695:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a698:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a69b:	c7 44 24 04 52 20 01 	movl   $0x12052,0x4(%esp)
    a6a2:	00 
    a6a3:	89 04 24             	mov    %eax,(%esp)
    a6a6:	e8 18 5a 00 00       	call   100c3 <sprintf>
    a6ab:	01 45 e0             	add    %eax,-0x20(%ebp)
    a6ae:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a6b4:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a6b7:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a6ba:	c7 44 24 04 9a 1c 01 	movl   $0x11c9a,0x4(%esp)
    a6c1:	00 
    a6c2:	89 04 24             	mov    %eax,(%esp)
    a6c5:	e8 f9 59 00 00       	call   100c3 <sprintf>
    a6ca:	01 45 e0             	add    %eax,-0x20(%ebp)
    a6cd:	c7 04 24 69 20 01 00 	movl   $0x12069,(%esp)
    a6d4:	e8 b1 56 00 00       	call   fd8a <printl>
    a6d9:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a6e0:	e9 29 01 00 00       	jmp    a80e <dump_fd_graph+0x186c>
    a6e5:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a6e8:	89 d0                	mov    %edx,%eax
    a6ea:	01 c0                	add    %eax,%eax
    a6ec:	01 d0                	add    %edx,%eax
    a6ee:	c1 e0 02             	shl    $0x2,%eax
    a6f1:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    a6f4:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    a6f7:	2d 60 2e 00 00       	sub    $0x2e60,%eax
    a6fc:	8b 00                	mov    (%eax),%eax
    a6fe:	83 f8 04             	cmp    $0x4,%eax
    a701:	75 64                	jne    a767 <dump_fd_graph+0x17c5>
    a703:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a706:	89 d0                	mov    %edx,%eax
    a708:	01 c0                	add    %eax,%eax
    a70a:	01 d0                	add    %edx,%eax
    a70c:	c1 e0 02             	shl    $0x2,%eax
    a70f:	8d 55 e8             	lea    -0x18(%ebp),%edx
    a712:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a715:	2d 68 2e 00 00       	sub    $0x2e68,%eax
    a71a:	8b 08                	mov    (%eax),%ecx
    a71c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a71f:	89 d0                	mov    %edx,%eax
    a721:	01 c0                	add    %eax,%eax
    a723:	01 d0                	add    %edx,%eax
    a725:	c1 e0 02             	shl    $0x2,%eax
    a728:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    a72b:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    a72e:	2d 64 2e 00 00       	sub    $0x2e64,%eax
    a733:	8b 00                	mov    (%eax),%eax
    a735:	8b 1d f0 32 01 00    	mov    0x132f0,%ebx
    a73b:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a73e:	01 d3                	add    %edx,%ebx
    a740:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a743:	89 54 24 10          	mov    %edx,0x10(%esp)
    a747:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    a74b:	89 44 24 08          	mov    %eax,0x8(%esp)
    a74f:	c7 44 24 04 6c 20 01 	movl   $0x1206c,0x4(%esp)
    a756:	00 
    a757:	89 1c 24             	mov    %ebx,(%esp)
    a75a:	e8 64 59 00 00       	call   100c3 <sprintf>
    a75f:	01 45 e0             	add    %eax,-0x20(%ebp)
    a762:	e9 a3 00 00 00       	jmp    a80a <dump_fd_graph+0x1868>
    a767:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a76a:	89 d0                	mov    %edx,%eax
    a76c:	01 c0                	add    %eax,%eax
    a76e:	01 d0                	add    %edx,%eax
    a770:	c1 e0 02             	shl    $0x2,%eax
    a773:	8d 55 e8             	lea    -0x18(%ebp),%edx
    a776:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a779:	2d 60 2e 00 00       	sub    $0x2e60,%eax
    a77e:	8b 00                	mov    (%eax),%eax
    a780:	83 f8 02             	cmp    $0x2,%eax
    a783:	75 61                	jne    a7e6 <dump_fd_graph+0x1844>
    a785:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a788:	89 d0                	mov    %edx,%eax
    a78a:	01 c0                	add    %eax,%eax
    a78c:	01 d0                	add    %edx,%eax
    a78e:	c1 e0 02             	shl    $0x2,%eax
    a791:	8d 4d e8             	lea    -0x18(%ebp),%ecx
    a794:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    a797:	2d 64 2e 00 00       	sub    $0x2e64,%eax
    a79c:	8b 08                	mov    (%eax),%ecx
    a79e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a7a1:	89 d0                	mov    %edx,%eax
    a7a3:	01 c0                	add    %eax,%eax
    a7a5:	01 d0                	add    %edx,%eax
    a7a7:	c1 e0 02             	shl    $0x2,%eax
    a7aa:	8d 5d e8             	lea    -0x18(%ebp),%ebx
    a7ad:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    a7b0:	2d 68 2e 00 00       	sub    $0x2e68,%eax
    a7b5:	8b 00                	mov    (%eax),%eax
    a7b7:	8b 1d f0 32 01 00    	mov    0x132f0,%ebx
    a7bd:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a7c0:	01 d3                	add    %edx,%ebx
    a7c2:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a7c5:	89 54 24 10          	mov    %edx,0x10(%esp)
    a7c9:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    a7cd:	89 44 24 08          	mov    %eax,0x8(%esp)
    a7d1:	c7 44 24 04 b8 20 01 	movl   $0x120b8,0x4(%esp)
    a7d8:	00 
    a7d9:	89 1c 24             	mov    %ebx,(%esp)
    a7dc:	e8 e2 58 00 00       	call   100c3 <sprintf>
    a7e1:	01 45 e0             	add    %eax,-0x20(%ebp)
    a7e4:	eb 24                	jmp    a80a <dump_fd_graph+0x1868>
    a7e6:	c7 44 24 0c f8 02 00 	movl   $0x2f8,0xc(%esp)
    a7ed:	00 
    a7ee:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    a7f5:	00 
    a7f6:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    a7fd:	00 
    a7fe:	c7 04 24 9e 1c 01 00 	movl   $0x11c9e,(%esp)
    a805:	e8 c0 5b 00 00       	call   103ca <assertion_failure>
    a80a:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a80e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a811:	3b 45 cc             	cmp    -0x34(%ebp),%eax
    a814:	0f 8c cb fe ff ff    	jl     a6e5 <dump_fd_graph+0x1743>
    a81a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a821:	eb 3f                	jmp    a862 <dump_fd_graph+0x18c0>
    a823:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a826:	8b 94 c5 80 f1 ff ff 	mov    -0xe80(%ebp,%eax,8),%edx
    a82d:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a830:	8b 84 c5 84 f1 ff ff 	mov    -0xe7c(%ebp,%eax,8),%eax
    a837:	8b 1d f0 32 01 00    	mov    0x132f0,%ebx
    a83d:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    a840:	8d 0c 0b             	lea    (%ebx,%ecx,1),%ecx
    a843:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a847:	89 44 24 08          	mov    %eax,0x8(%esp)
    a84b:	c7 44 24 04 04 21 01 	movl   $0x12104,0x4(%esp)
    a852:	00 
    a853:	89 0c 24             	mov    %ecx,(%esp)
    a856:	e8 68 58 00 00       	call   100c3 <sprintf>
    a85b:	01 45 e0             	add    %eax,-0x20(%ebp)
    a85e:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a862:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a865:	3b 45 d8             	cmp    -0x28(%ebp),%eax
    a868:	7c b9                	jl     a823 <dump_fd_graph+0x1881>
    a86a:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a871:	eb 7a                	jmp    a8ed <dump_fd_graph+0x194b>
    a873:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a876:	89 d0                	mov    %edx,%eax
    a878:	01 c0                	add    %eax,%eax
    a87a:	01 d0                	add    %edx,%eax
    a87c:	c1 e0 02             	shl    $0x2,%eax
    a87f:	8d 55 e8             	lea    -0x18(%ebp),%edx
    a882:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a885:	2d 60 1a 00 00       	sub    $0x1a60,%eax
    a88a:	8b 18                	mov    (%eax),%ebx
    a88c:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a88f:	89 d0                	mov    %edx,%eax
    a891:	01 c0                	add    %eax,%eax
    a893:	01 d0                	add    %edx,%eax
    a895:	c1 e0 02             	shl    $0x2,%eax
    a898:	8d 4d e8             	lea    -0x18(%ebp),%ecx
    a89b:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    a89e:	2d 64 1a 00 00       	sub    $0x1a64,%eax
    a8a3:	8b 08                	mov    (%eax),%ecx
    a8a5:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    a8a8:	89 d0                	mov    %edx,%eax
    a8aa:	01 c0                	add    %eax,%eax
    a8ac:	01 d0                	add    %edx,%eax
    a8ae:	c1 e0 02             	shl    $0x2,%eax
    a8b1:	8d 55 e8             	lea    -0x18(%ebp),%edx
    a8b4:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a8b7:	2d 68 1a 00 00       	sub    $0x1a68,%eax
    a8bc:	8b 00                	mov    (%eax),%eax
    a8be:	8b 35 f0 32 01 00    	mov    0x132f0,%esi
    a8c4:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a8c7:	8d 14 16             	lea    (%esi,%edx,1),%edx
    a8ca:	89 5c 24 10          	mov    %ebx,0x10(%esp)
    a8ce:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    a8d2:	89 44 24 08          	mov    %eax,0x8(%esp)
    a8d6:	c7 44 24 04 44 21 01 	movl   $0x12144,0x4(%esp)
    a8dd:	00 
    a8de:	89 14 24             	mov    %edx,(%esp)
    a8e1:	e8 dd 57 00 00       	call   100c3 <sprintf>
    a8e6:	01 45 e0             	add    %eax,-0x20(%ebp)
    a8e9:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a8ed:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a8f0:	3b 45 d4             	cmp    -0x2c(%ebp),%eax
    a8f3:	0f 8c 7a ff ff ff    	jl     a873 <dump_fd_graph+0x18d1>
    a8f9:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a900:	eb 3f                	jmp    a941 <dump_fd_graph+0x199f>
    a902:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a905:	8b 94 c5 84 dd ff ff 	mov    -0x227c(%ebp,%eax,8),%edx
    a90c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a90f:	8b 84 c5 80 dd ff ff 	mov    -0x2280(%ebp,%eax,8),%eax
    a916:	8b 1d f0 32 01 00    	mov    0x132f0,%ebx
    a91c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    a91f:	8d 0c 0b             	lea    (%ebx,%ecx,1),%ecx
    a922:	89 54 24 0c          	mov    %edx,0xc(%esp)
    a926:	89 44 24 08          	mov    %eax,0x8(%esp)
    a92a:	c7 44 24 04 68 21 01 	movl   $0x12168,0x4(%esp)
    a931:	00 
    a932:	89 0c 24             	mov    %ecx,(%esp)
    a935:	e8 89 57 00 00       	call   100c3 <sprintf>
    a93a:	01 45 e0             	add    %eax,-0x20(%ebp)
    a93d:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a941:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a944:	3b 45 d0             	cmp    -0x30(%ebp),%eax
    a947:	7c b9                	jl     a902 <dump_fd_graph+0x1960>
    a949:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    a950:	eb 4e                	jmp    a9a0 <dump_fd_graph+0x19fe>
    a952:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a955:	6b c0 2c             	imul   $0x2c,%eax,%eax
    a958:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    a95d:	8b 40 04             	mov    0x4(%eax),%eax
    a960:	85 c0                	test   %eax,%eax
    a962:	74 38                	je     a99c <dump_fd_graph+0x19fa>
    a964:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a967:	6b c0 2c             	imul   $0x2c,%eax,%eax
    a96a:	05 a0 4b 01 00       	add    $0x14ba0,%eax
    a96f:	8b 40 08             	mov    0x8(%eax),%eax
    a972:	8b 0d f0 32 01 00    	mov    0x132f0,%ecx
    a978:	8b 55 e0             	mov    -0x20(%ebp),%edx
    a97b:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    a97e:	89 44 24 0c          	mov    %eax,0xc(%esp)
    a982:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    a985:	89 44 24 08          	mov    %eax,0x8(%esp)
    a989:	c7 44 24 04 8c 21 01 	movl   $0x1218c,0x4(%esp)
    a990:	00 
    a991:	89 14 24             	mov    %edx,(%esp)
    a994:	e8 2a 57 00 00       	call   100c3 <sprintf>
    a999:	01 45 e0             	add    %eax,-0x20(%ebp)
    a99c:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    a9a0:	83 7d e4 3f          	cmpl   $0x3f,-0x1c(%ebp)
    a9a4:	7e ac                	jle    a952 <dump_fd_graph+0x19b0>
    a9a6:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a9ac:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a9af:	01 c2                	add    %eax,%edx
    a9b1:	8d 85 60 fb ff ff    	lea    -0x4a0(%ebp),%eax
    a9b7:	89 44 24 08          	mov    %eax,0x8(%esp)
    a9bb:	c7 44 24 04 b1 21 01 	movl   $0x121b1,0x4(%esp)
    a9c2:	00 
    a9c3:	89 14 24             	mov    %edx,(%esp)
    a9c6:	e8 f8 56 00 00       	call   100c3 <sprintf>
    a9cb:	01 45 e0             	add    %eax,-0x20(%ebp)
    a9ce:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a9d4:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a9d7:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a9da:	c7 44 24 04 c1 21 01 	movl   $0x121c1,0x4(%esp)
    a9e1:	00 
    a9e2:	89 04 24             	mov    %eax,(%esp)
    a9e5:	e8 d9 56 00 00       	call   100c3 <sprintf>
    a9ea:	01 45 e0             	add    %eax,-0x20(%ebp)
    a9ed:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    a9f3:	8b 45 e0             	mov    -0x20(%ebp),%eax
    a9f6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    a9f9:	c7 44 24 04 c4 21 01 	movl   $0x121c4,0x4(%esp)
    aa00:	00 
    aa01:	89 04 24             	mov    %eax,(%esp)
    aa04:	e8 ba 56 00 00       	call   100c3 <sprintf>
    aa09:	01 45 e0             	add    %eax,-0x20(%ebp)
    aa0c:	a1 fc 0b 01 00       	mov    0x10bfc,%eax
    aa11:	39 45 e0             	cmp    %eax,-0x20(%ebp)
    aa14:	7c 24                	jl     aa3a <dump_fd_graph+0x1a98>
    aa16:	c7 44 24 0c 2a 03 00 	movl   $0x32a,0xc(%esp)
    aa1d:	00 
    aa1e:	c7 44 24 08 ec 19 01 	movl   $0x119ec,0x8(%esp)
    aa25:	00 
    aa26:	c7 44 24 04 ec 19 01 	movl   $0x119ec,0x4(%esp)
    aa2d:	00 
    aa2e:	c7 04 24 d3 21 01 00 	movl   $0x121d3,(%esp)
    aa35:	e8 90 59 00 00       	call   103ca <assertion_failure>
    aa3a:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    aa40:	8b 45 e0             	mov    -0x20(%ebp),%eax
    aa43:	8d 04 02             	lea    (%edx,%eax,1),%eax
    aa46:	c6 00 00             	movb   $0x0,(%eax)
    aa49:	8b 45 e0             	mov    -0x20(%ebp),%eax
    aa4c:	89 45 ac             	mov    %eax,-0x54(%ebp)
    aa4f:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
    aa56:	eb 6c                	jmp    aac4 <dump_fd_graph+0x1b22>
    aa58:	b8 ff 01 00 00       	mov    $0x1ff,%eax
    aa5d:	81 7d ac ff 01 00 00 	cmpl   $0x1ff,-0x54(%ebp)
    aa64:	0f 4e 45 ac          	cmovle -0x54(%ebp),%eax
    aa68:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
    aa6e:	8b 15 f0 32 01 00    	mov    0x132f0,%edx
    aa74:	8b 45 a8             	mov    -0x58(%ebp),%eax
    aa77:	01 c2                	add    %eax,%edx
    aa79:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
    aa7f:	89 44 24 08          	mov    %eax,0x8(%esp)
    aa83:	89 54 24 04          	mov    %edx,0x4(%esp)
    aa87:	8d 85 80 cf ff ff    	lea    -0x3080(%ebp),%eax
    aa8d:	89 04 24             	mov    %eax,(%esp)
    aa90:	e8 5b 56 00 00       	call   100f0 <memcpy>
    aa95:	8d 85 80 cf ff ff    	lea    -0x3080(%ebp),%eax
    aa9b:	03 85 60 ff ff ff    	add    -0xa0(%ebp),%eax
    aaa1:	c6 00 00             	movb   $0x0,(%eax)
    aaa4:	8d 85 80 cf ff ff    	lea    -0x3080(%ebp),%eax
    aaaa:	89 04 24             	mov    %eax,(%esp)
    aaad:	e8 6e de ff ff       	call   8920 <disklog>
    aab2:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
    aab8:	01 45 a8             	add    %eax,-0x58(%ebp)
    aabb:	8b 85 60 ff ff ff    	mov    -0xa0(%ebp),%eax
    aac1:	29 45 ac             	sub    %eax,-0x54(%ebp)
    aac4:	83 7d ac 00          	cmpl   $0x0,-0x54(%ebp)
    aac8:	75 8e                	jne    aa58 <dump_fd_graph+0x1ab6>
    aaca:	e8 40 a5 ff ff       	call   500f <disable_int>
    aacf:	c7 45 dc c0 0c 05 00 	movl   $0x50cc0,-0x24(%ebp)
    aad6:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    aadd:	eb 61                	jmp    ab40 <dump_fd_graph+0x1b9e>
    aadf:	8b 45 dc             	mov    -0x24(%ebp),%eax
    aae2:	8b 40 72             	mov    0x72(%eax),%eax
    aae5:	83 f8 20             	cmp    $0x20,%eax
    aae8:	74 3e                	je     ab28 <dump_fd_graph+0x1b86>
    aaea:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    aaee:	74 3b                	je     ab2b <dump_fd_graph+0x1b89>
    aaf0:	83 7d e4 01          	cmpl   $0x1,-0x1c(%ebp)
    aaf4:	74 38                	je     ab2e <dump_fd_graph+0x1b8c>
    aaf6:	83 7d e4 02          	cmpl   $0x2,-0x1c(%ebp)
    aafa:	74 35                	je     ab31 <dump_fd_graph+0x1b8f>
    aafc:	e8 a7 5a 00 00       	call   105a8 <getpid>
    ab01:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
    ab04:	74 2e                	je     ab34 <dump_fd_graph+0x1b92>
    ab06:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    ab09:	8b 94 85 b8 fa ff ff 	mov    -0x548(%ebp,%eax,4),%edx
    ab10:	8b 45 dc             	mov    -0x24(%ebp),%eax
    ab13:	89 50 5a             	mov    %edx,0x5a(%eax)
    ab16:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    ab19:	8b 94 85 10 fa ff ff 	mov    -0x5f0(%ebp,%eax,4),%edx
    ab20:	8b 45 dc             	mov    -0x24(%ebp),%eax
    ab23:	89 50 5e             	mov    %edx,0x5e(%eax)
    ab26:	eb 0d                	jmp    ab35 <dump_fd_graph+0x1b93>
    ab28:	90                   	nop
    ab29:	eb 0a                	jmp    ab35 <dump_fd_graph+0x1b93>
    ab2b:	90                   	nop
    ab2c:	eb 07                	jmp    ab35 <dump_fd_graph+0x1b93>
    ab2e:	90                   	nop
    ab2f:	eb 04                	jmp    ab35 <dump_fd_graph+0x1b93>
    ab31:	90                   	nop
    ab32:	eb 01                	jmp    ab35 <dump_fd_graph+0x1b93>
    ab34:	90                   	nop
    ab35:	83 45 e4 01          	addl   $0x1,-0x1c(%ebp)
    ab39:	81 45 dc 36 03 00 00 	addl   $0x336,-0x24(%ebp)
    ab40:	83 7d e4 29          	cmpl   $0x29,-0x1c(%ebp)
    ab44:	7e 99                	jle    aadf <dump_fd_graph+0x1b3d>
    ab46:	e8 c6 a4 ff ff       	call   5011 <enable_int>
    ab4b:	c7 04 24 eb 21 01 00 	movl   $0x121eb,(%esp)
    ab52:	e8 33 52 00 00       	call   fd8a <printl>
    ab57:	81 c4 cc 30 00 00    	add    $0x30cc,%esp
    ab5d:	5b                   	pop    %ebx
    ab5e:	5e                   	pop    %esi
    ab5f:	5f                   	pop    %edi
    ab60:	5d                   	pop    %ebp
    ab61:	c3                   	ret    
    ab62:	90                   	nop
    ab63:	90                   	nop

0000ab64 <get_buffer>:
    ab64:	55                   	push   %ebp
    ab65:	89 e5                	mov    %esp,%ebp
    ab67:	83 ec 28             	sub    $0x28,%esp
    ab6a:	8b 45 0c             	mov    0xc(%ebp),%eax
    ab6d:	89 45 e0             	mov    %eax,-0x20(%ebp)
    ab70:	8b 45 10             	mov    0x10(%ebp),%eax
    ab73:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    ab76:	a1 8c d6 04 00       	mov    0x4d68c,%eax
    ab7b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    ab7e:	eb 43                	jmp    abc3 <get_buffer+0x5f>
    ab80:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ab83:	0f b6 40 16          	movzbl 0x16(%eax),%eax
    ab87:	84 c0                	test   %al,%al
    ab89:	75 2f                	jne    abba <get_buffer+0x56>
    ab8b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ab8e:	8b 55 08             	mov    0x8(%ebp),%edx
    ab91:	89 50 0c             	mov    %edx,0xc(%eax)
    ab94:	8b 4d f4             	mov    -0xc(%ebp),%ecx
    ab97:	8b 45 e0             	mov    -0x20(%ebp),%eax
    ab9a:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    ab9d:	89 41 04             	mov    %eax,0x4(%ecx)
    aba0:	89 51 08             	mov    %edx,0x8(%ecx)
    aba3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    aba6:	8b 55 14             	mov    0x14(%ebp),%edx
    aba9:	89 50 10             	mov    %edx,0x10(%eax)
    abac:	8b 45 f4             	mov    -0xc(%ebp),%eax
    abaf:	c6 40 16 01          	movb   $0x1,0x16(%eax)
    abb3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    abb6:	8b 00                	mov    (%eax),%eax
    abb8:	eb 1d                	jmp    abd7 <get_buffer+0x73>
    abba:	8b 45 f4             	mov    -0xc(%ebp),%eax
    abbd:	8b 40 20             	mov    0x20(%eax),%eax
    abc0:	89 45 f4             	mov    %eax,-0xc(%ebp)
    abc3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    abc6:	8b 40 20             	mov    0x20(%eax),%eax
    abc9:	85 c0                	test   %eax,%eax
    abcb:	75 b3                	jne    ab80 <get_buffer+0x1c>
    abcd:	e8 85 00 00 00       	call   ac57 <free_buffer>
    abd2:	b8 00 00 00 00       	mov    $0x0,%eax
    abd7:	c9                   	leave  
    abd8:	c3                   	ret    

0000abd9 <find_buffer>:
    abd9:	55                   	push   %ebp
    abda:	89 e5                	mov    %esp,%ebp
    abdc:	83 ec 18             	sub    $0x18,%esp
    abdf:	8b 45 0c             	mov    0xc(%ebp),%eax
    abe2:	89 45 e8             	mov    %eax,-0x18(%ebp)
    abe5:	8b 45 10             	mov    0x10(%ebp),%eax
    abe8:	89 45 ec             	mov    %eax,-0x14(%ebp)
    abeb:	a1 8c d6 04 00       	mov    0x4d68c,%eax
    abf0:	89 45 fc             	mov    %eax,-0x4(%ebp)
    abf3:	eb 47                	jmp    ac3c <find_buffer+0x63>
    abf5:	8b 45 fc             	mov    -0x4(%ebp),%eax
    abf8:	8b 40 0c             	mov    0xc(%eax),%eax
    abfb:	3b 45 08             	cmp    0x8(%ebp),%eax
    abfe:	75 33                	jne    ac33 <find_buffer+0x5a>
    ac00:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac03:	8b 50 08             	mov    0x8(%eax),%edx
    ac06:	8b 40 04             	mov    0x4(%eax),%eax
    ac09:	89 d1                	mov    %edx,%ecx
    ac0b:	33 4d ec             	xor    -0x14(%ebp),%ecx
    ac0e:	33 45 e8             	xor    -0x18(%ebp),%eax
    ac11:	09 c8                	or     %ecx,%eax
    ac13:	85 c0                	test   %eax,%eax
    ac15:	75 1c                	jne    ac33 <find_buffer+0x5a>
    ac17:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac1a:	8b 40 10             	mov    0x10(%eax),%eax
    ac1d:	3b 45 14             	cmp    0x14(%ebp),%eax
    ac20:	75 11                	jne    ac33 <find_buffer+0x5a>
    ac22:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac25:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    ac2c:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac2f:	8b 00                	mov    (%eax),%eax
    ac31:	eb 18                	jmp    ac4b <find_buffer+0x72>
    ac33:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac36:	8b 40 20             	mov    0x20(%eax),%eax
    ac39:	89 45 fc             	mov    %eax,-0x4(%ebp)
    ac3c:	8b 45 fc             	mov    -0x4(%ebp),%eax
    ac3f:	8b 40 20             	mov    0x20(%eax),%eax
    ac42:	85 c0                	test   %eax,%eax
    ac44:	75 af                	jne    abf5 <find_buffer+0x1c>
    ac46:	b8 00 00 00 00       	mov    $0x0,%eax
    ac4b:	c9                   	leave  
    ac4c:	c3                   	ret    

0000ac4d <sync_buffer>:
    ac4d:	55                   	push   %ebp
    ac4e:	89 e5                	mov    %esp,%ebp
    ac50:	5d                   	pop    %ebp
    ac51:	c3                   	ret    

0000ac52 <do_sync>:
    ac52:	55                   	push   %ebp
    ac53:	89 e5                	mov    %esp,%ebp
    ac55:	5d                   	pop    %ebp
    ac56:	c3                   	ret    

0000ac57 <free_buffer>:
    ac57:	55                   	push   %ebp
    ac58:	89 e5                	mov    %esp,%ebp
    ac5a:	5d                   	pop    %ebp
    ac5b:	c3                   	ret    

0000ac5c <init_buffer>:
    ac5c:	55                   	push   %ebp
    ac5d:	89 e5                	mov    %esp,%ebp
    ac5f:	83 ec 38             	sub    $0x38,%esp
    ac62:	a1 8c d6 04 00       	mov    0x4d68c,%eax
    ac67:	89 45 f4             	mov    %eax,-0xc(%ebp)
    ac6a:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    ac71:	a1 8c d6 04 00       	mov    0x4d68c,%eax
    ac76:	8b 15 94 e7 04 00    	mov    0x4e794,%edx
    ac7c:	81 c2 00 00 0a 00    	add    $0xa0000,%edx
    ac82:	01 d0                	add    %edx,%eax
    ac84:	89 45 f0             	mov    %eax,-0x10(%ebp)
    ac87:	eb 54                	jmp    acdd <init_buffer+0x81>
    ac89:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ac8c:	c7 40 0c 00 00 00 00 	movl   $0x0,0xc(%eax)
    ac93:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ac96:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    ac9d:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
    aca4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    aca7:	c6 40 16 00          	movb   $0x0,0x16(%eax)
    acab:	8b 45 f4             	mov    -0xc(%ebp),%eax
    acae:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
    acb5:	8b 55 f0             	mov    -0x10(%ebp),%edx
    acb8:	8b 45 f4             	mov    -0xc(%ebp),%eax
    acbb:	89 10                	mov    %edx,(%eax)
    acbd:	8b 45 f4             	mov    -0xc(%ebp),%eax
    acc0:	8d 50 d4             	lea    -0x2c(%eax),%edx
    acc3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    acc6:	89 50 1c             	mov    %edx,0x1c(%eax)
    acc9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    accc:	8d 50 2c             	lea    0x2c(%eax),%edx
    accf:	8b 45 f4             	mov    -0xc(%ebp),%eax
    acd2:	89 50 20             	mov    %edx,0x20(%eax)
    acd5:	83 45 f4 2c          	addl   $0x2c,-0xc(%ebp)
    acd9:	83 45 ec 01          	addl   $0x1,-0x14(%ebp)
    acdd:	81 6d f0 00 02 00 00 	subl   $0x200,-0x10(%ebp)
    ace4:	a1 8c d6 04 00       	mov    0x4d68c,%eax
    ace9:	05 00 00 0a 00       	add    $0xa0000,%eax
    acee:	39 45 f0             	cmp    %eax,-0x10(%ebp)
    acf1:	73 96                	jae    ac89 <init_buffer+0x2d>
    acf3:	8b 15 8c d6 04 00    	mov    0x4d68c,%edx
    acf9:	8b 45 ec             	mov    -0x14(%ebp),%eax
    acfc:	c1 e0 09             	shl    $0x9,%eax
    acff:	8d 88 ff 03 00 00    	lea    0x3ff(%eax),%ecx
    ad05:	85 c0                	test   %eax,%eax
    ad07:	0f 48 c1             	cmovs  %ecx,%eax
    ad0a:	c1 f8 0a             	sar    $0xa,%eax
    ad0d:	8b 4d ec             	mov    -0x14(%ebp),%ecx
    ad10:	c1 e1 09             	shl    $0x9,%ecx
    ad13:	89 54 24 10          	mov    %edx,0x10(%esp)
    ad17:	89 44 24 0c          	mov    %eax,0xc(%esp)
    ad1b:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    ad1f:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ad22:	89 44 24 04          	mov    %eax,0x4(%esp)
    ad26:	c7 04 24 f0 21 01 00 	movl   $0x121f0,(%esp)
    ad2d:	e8 58 50 00 00       	call   fd8a <printl>
    ad32:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ad35:	6b c0 2c             	imul   $0x2c,%eax,%eax
    ad38:	89 c2                	mov    %eax,%edx
    ad3a:	c1 ea 0a             	shr    $0xa,%edx
    ad3d:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ad40:	6b c0 2c             	imul   $0x2c,%eax,%eax
    ad43:	89 54 24 08          	mov    %edx,0x8(%esp)
    ad47:	89 44 24 04          	mov    %eax,0x4(%esp)
    ad4b:	c7 04 24 24 22 01 00 	movl   $0x12224,(%esp)
    ad52:	e8 33 50 00 00       	call   fd8a <printl>
    ad57:	c9                   	leave  
    ad58:	c3                   	ret    
    ad59:	90                   	nop
    ad5a:	90                   	nop
    ad5b:	90                   	nop

0000ad5c <file_open>:
    ad5c:	55                   	push   %ebp
    ad5d:	89 e5                	mov    %esp,%ebp
    ad5f:	b8 00 00 00 00       	mov    $0x0,%eax
    ad64:	5d                   	pop    %ebp
    ad65:	c3                   	ret    

0000ad66 <file_rdwt>:
    ad66:	55                   	push   %ebp
    ad67:	89 e5                	mov    %esp,%ebp
    ad69:	56                   	push   %esi
    ad6a:	53                   	push   %ebx
    ad6b:	83 ec 50             	sub    $0x50,%esp
    ad6e:	8b 45 0c             	mov    0xc(%ebp),%eax
    ad71:	8b 40 04             	mov    0x4(%eax),%eax
    ad74:	89 45 e0             	mov    %eax,-0x20(%ebp)
    ad77:	8b 45 0c             	mov    0xc(%ebp),%eax
    ad7a:	8b 40 0c             	mov    0xc(%eax),%eax
    ad7d:	89 45 dc             	mov    %eax,-0x24(%ebp)
    ad80:	83 7d 08 11          	cmpl   $0x11,0x8(%ebp)
    ad84:	75 19                	jne    ad9f <file_rdwt+0x39>
    ad86:	8b 45 dc             	mov    -0x24(%ebp),%eax
    ad89:	8b 50 04             	mov    0x4(%eax),%edx
    ad8c:	8b 45 14             	mov    0x14(%ebp),%eax
    ad8f:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    ad92:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    ad95:	39 c2                	cmp    %eax,%edx
    ad97:	0f 46 c2             	cmovbe %edx,%eax
    ad9a:	89 45 f4             	mov    %eax,-0xc(%ebp)
    ad9d:	eb 1c                	jmp    adbb <file_rdwt+0x55>
    ad9f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    ada2:	8b 40 0c             	mov    0xc(%eax),%eax
    ada5:	89 c2                	mov    %eax,%edx
    ada7:	c1 e2 09             	shl    $0x9,%edx
    adaa:	8b 45 14             	mov    0x14(%ebp),%eax
    adad:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    adb0:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    adb3:	39 c2                	cmp    %eax,%edx
    adb5:	0f 46 c2             	cmovbe %edx,%eax
    adb8:	89 45 f4             	mov    %eax,-0xc(%ebp)
    adbb:	8b 45 e0             	mov    -0x20(%ebp),%eax
    adbe:	89 c2                	mov    %eax,%edx
    adc0:	c1 fa 1f             	sar    $0x1f,%edx
    adc3:	c1 ea 17             	shr    $0x17,%edx
    adc6:	01 d0                	add    %edx,%eax
    adc8:	25 ff 01 00 00       	and    $0x1ff,%eax
    adcd:	29 d0                	sub    %edx,%eax
    adcf:	89 45 f0             	mov    %eax,-0x10(%ebp)
    add2:	8b 45 dc             	mov    -0x24(%ebp),%eax
    add5:	8b 50 08             	mov    0x8(%eax),%edx
    add8:	8b 45 e0             	mov    -0x20(%ebp),%eax
    addb:	c1 f8 09             	sar    $0x9,%eax
    adde:	8d 04 02             	lea    (%edx,%eax,1),%eax
    ade1:	89 45 d8             	mov    %eax,-0x28(%ebp)
    ade4:	8b 45 dc             	mov    -0x24(%ebp),%eax
    ade7:	8b 50 08             	mov    0x8(%eax),%edx
    adea:	8b 45 f4             	mov    -0xc(%ebp),%eax
    aded:	c1 f8 09             	sar    $0x9,%eax
    adf0:	8d 04 02             	lea    (%edx,%eax,1),%eax
    adf3:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    adf6:	a1 f4 0b 01 00       	mov    0x10bf4,%eax
    adfb:	89 c2                	mov    %eax,%edx
    adfd:	c1 fa 09             	sar    $0x9,%edx
    ae00:	8b 45 d8             	mov    -0x28(%ebp),%eax
    ae03:	8b 4d d4             	mov    -0x2c(%ebp),%ecx
    ae06:	89 cb                	mov    %ecx,%ebx
    ae08:	29 c3                	sub    %eax,%ebx
    ae0a:	89 d8                	mov    %ebx,%eax
    ae0c:	83 c0 01             	add    $0x1,%eax
    ae0f:	39 c2                	cmp    %eax,%edx
    ae11:	0f 4e c2             	cmovle %edx,%eax
    ae14:	89 45 d0             	mov    %eax,-0x30(%ebp)
    ae17:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    ae1e:	8b 45 14             	mov    0x14(%ebp),%eax
    ae21:	89 45 e8             	mov    %eax,-0x18(%ebp)
    ae24:	8b 45 d8             	mov    -0x28(%ebp),%eax
    ae27:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    ae2a:	e9 1f 01 00 00       	jmp    af4e <file_rdwt+0x1e8>
    ae2f:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ae32:	c1 e0 09             	shl    $0x9,%eax
    ae35:	89 c2                	mov    %eax,%edx
    ae37:	2b 55 f0             	sub    -0x10(%ebp),%edx
    ae3a:	8b 45 e8             	mov    -0x18(%ebp),%eax
    ae3d:	39 c2                	cmp    %eax,%edx
    ae3f:	0f 4e c2             	cmovle %edx,%eax
    ae42:	89 45 cc             	mov    %eax,-0x34(%ebp)
    ae45:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    ae4b:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ae4e:	89 c6                	mov    %eax,%esi
    ae50:	c1 e6 09             	shl    $0x9,%esi
    ae53:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    ae56:	c1 e0 09             	shl    $0x9,%eax
    ae59:	89 c2                	mov    %eax,%edx
    ae5b:	c1 fa 1f             	sar    $0x1f,%edx
    ae5e:	8b 4d dc             	mov    -0x24(%ebp),%ecx
    ae61:	8b 49 20             	mov    0x20(%ecx),%ecx
    ae64:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    ae68:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    ae6f:	00 
    ae70:	89 74 24 10          	mov    %esi,0x10(%esp)
    ae74:	89 44 24 08          	mov    %eax,0x8(%esp)
    ae78:	89 54 24 0c          	mov    %edx,0xc(%esp)
    ae7c:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    ae80:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    ae87:	e8 22 b5 ff ff       	call   63ae <rw_sector>
    ae8c:	83 7d 08 11          	cmpl   $0x11,0x8(%ebp)
    ae90:	75 27                	jne    aeb9 <file_rdwt+0x153>
    ae92:	8b 15 e8 32 01 00    	mov    0x132e8,%edx
    ae98:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ae9b:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
    ae9e:	8b 45 ec             	mov    -0x14(%ebp),%eax
    aea1:	03 45 10             	add    0x10(%ebp),%eax
    aea4:	8b 55 cc             	mov    -0x34(%ebp),%edx
    aea7:	89 54 24 08          	mov    %edx,0x8(%esp)
    aeab:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    aeaf:	89 04 24             	mov    %eax,(%esp)
    aeb2:	e8 39 52 00 00       	call   100f0 <memcpy>
    aeb7:	eb 6b                	jmp    af24 <file_rdwt+0x1be>
    aeb9:	8b 45 ec             	mov    -0x14(%ebp),%eax
    aebc:	03 45 10             	add    0x10(%ebp),%eax
    aebf:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    aec5:	8b 55 f0             	mov    -0x10(%ebp),%edx
    aec8:	01 d1                	add    %edx,%ecx
    aeca:	8b 55 cc             	mov    -0x34(%ebp),%edx
    aecd:	89 54 24 08          	mov    %edx,0x8(%esp)
    aed1:	89 44 24 04          	mov    %eax,0x4(%esp)
    aed5:	89 0c 24             	mov    %ecx,(%esp)
    aed8:	e8 13 52 00 00       	call   100f0 <memcpy>
    aedd:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    aee3:	8b 45 d0             	mov    -0x30(%ebp),%eax
    aee6:	89 c6                	mov    %eax,%esi
    aee8:	c1 e6 09             	shl    $0x9,%esi
    aeeb:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    aeee:	c1 e0 09             	shl    $0x9,%eax
    aef1:	89 c2                	mov    %eax,%edx
    aef3:	c1 fa 1f             	sar    $0x1f,%edx
    aef6:	8b 4d dc             	mov    -0x24(%ebp),%ecx
    aef9:	8b 49 20             	mov    0x20(%ecx),%ecx
    aefc:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    af00:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    af07:	00 
    af08:	89 74 24 10          	mov    %esi,0x10(%esp)
    af0c:	89 44 24 08          	mov    %eax,0x8(%esp)
    af10:	89 54 24 0c          	mov    %edx,0xc(%esp)
    af14:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    af18:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    af1f:	e8 8a b4 ff ff       	call   63ae <rw_sector>
    af24:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    af2b:	8b 45 cc             	mov    -0x34(%ebp),%eax
    af2e:	01 45 ec             	add    %eax,-0x14(%ebp)
    af31:	8b 45 0c             	mov    0xc(%ebp),%eax
    af34:	8b 40 04             	mov    0x4(%eax),%eax
    af37:	89 c2                	mov    %eax,%edx
    af39:	03 55 cc             	add    -0x34(%ebp),%edx
    af3c:	8b 45 0c             	mov    0xc(%ebp),%eax
    af3f:	89 50 04             	mov    %edx,0x4(%eax)
    af42:	8b 45 cc             	mov    -0x34(%ebp),%eax
    af45:	29 45 e8             	sub    %eax,-0x18(%ebp)
    af48:	8b 45 d0             	mov    -0x30(%ebp),%eax
    af4b:	01 45 e4             	add    %eax,-0x1c(%ebp)
    af4e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    af51:	3b 45 d4             	cmp    -0x2c(%ebp),%eax
    af54:	0f 8e d5 fe ff ff    	jle    ae2f <file_rdwt+0xc9>
    af5a:	8b 45 0c             	mov    0xc(%ebp),%eax
    af5d:	8b 40 04             	mov    0x4(%eax),%eax
    af60:	89 c2                	mov    %eax,%edx
    af62:	8b 45 dc             	mov    -0x24(%ebp),%eax
    af65:	8b 40 04             	mov    0x4(%eax),%eax
    af68:	39 c2                	cmp    %eax,%edx
    af6a:	76 19                	jbe    af85 <file_rdwt+0x21f>
    af6c:	8b 45 0c             	mov    0xc(%ebp),%eax
    af6f:	8b 40 04             	mov    0x4(%eax),%eax
    af72:	89 c2                	mov    %eax,%edx
    af74:	8b 45 dc             	mov    -0x24(%ebp),%eax
    af77:	89 50 04             	mov    %edx,0x4(%eax)
    af7a:	8b 45 dc             	mov    -0x24(%ebp),%eax
    af7d:	89 04 24             	mov    %eax,(%esp)
    af80:	e8 51 b8 ff ff       	call   67d6 <sync_inode>
    af85:	8b 45 ec             	mov    -0x14(%ebp),%eax
    af88:	83 c4 50             	add    $0x50,%esp
    af8b:	5b                   	pop    %ebx
    af8c:	5e                   	pop    %esi
    af8d:	5d                   	pop    %ebp
    af8e:	c3                   	ret    

0000af8f <file_read>:
    af8f:	55                   	push   %ebp
    af90:	89 e5                	mov    %esp,%ebp
    af92:	83 ec 18             	sub    $0x18,%esp
    af95:	8b 45 10             	mov    0x10(%ebp),%eax
    af98:	89 44 24 0c          	mov    %eax,0xc(%esp)
    af9c:	8b 45 0c             	mov    0xc(%ebp),%eax
    af9f:	89 44 24 08          	mov    %eax,0x8(%esp)
    afa3:	8b 45 08             	mov    0x8(%ebp),%eax
    afa6:	89 44 24 04          	mov    %eax,0x4(%esp)
    afaa:	c7 04 24 11 00 00 00 	movl   $0x11,(%esp)
    afb1:	e8 b0 fd ff ff       	call   ad66 <file_rdwt>
    afb6:	c9                   	leave  
    afb7:	c3                   	ret    

0000afb8 <file_write>:
    afb8:	55                   	push   %ebp
    afb9:	89 e5                	mov    %esp,%ebp
    afbb:	83 ec 18             	sub    $0x18,%esp
    afbe:	8b 45 10             	mov    0x10(%ebp),%eax
    afc1:	89 44 24 0c          	mov    %eax,0xc(%esp)
    afc5:	8b 45 0c             	mov    0xc(%ebp),%eax
    afc8:	89 44 24 08          	mov    %eax,0x8(%esp)
    afcc:	8b 45 08             	mov    0x8(%ebp),%eax
    afcf:	89 44 24 04          	mov    %eax,0x4(%esp)
    afd3:	c7 04 24 12 00 00 00 	movl   $0x12,(%esp)
    afda:	e8 87 fd ff ff       	call   ad66 <file_rdwt>
    afdf:	c9                   	leave  
    afe0:	c3                   	ret    
    afe1:	90                   	nop
    afe2:	90                   	nop
    afe3:	90                   	nop

0000afe4 <namei>:
    afe4:	55                   	push   %ebp
    afe5:	89 e5                	mov    %esp,%ebp
    afe7:	83 ec 28             	sub    $0x28,%esp
    afea:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    aff1:	00 
    aff2:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    aff9:	00 
    affa:	8b 45 f0             	mov    -0x10(%ebp),%eax
    affd:	89 04 24             	mov    %eax,(%esp)
    b000:	e8 1a 51 00 00       	call   1011f <memset>
    b005:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    b00c:	00 
    b00d:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    b014:	00 
    b015:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b018:	89 04 24             	mov    %eax,(%esp)
    b01b:	e8 ff 50 00 00       	call   1011f <memset>
    b020:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    b025:	8b 80 2e 02 00 00    	mov    0x22e(%eax),%eax
    b02b:	85 c0                	test   %eax,%eax
    b02d:	75 0c                	jne    b03b <namei+0x57>
    b02f:	c7 04 24 4c 22 01 00 	movl   $0x1224c,(%esp)
    b036:	e8 fc 6e ff ff       	call   1f37 <panic>
    b03b:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    b040:	8b 80 2a 02 00 00    	mov    0x22a(%eax),%eax
    b046:	85 c0                	test   %eax,%eax
    b048:	75 0c                	jne    b056 <namei+0x72>
    b04a:	c7 04 24 5a 22 01 00 	movl   $0x1225a,(%esp)
    b051:	e8 e1 6e ff ff       	call   1f37 <panic>
    b056:	8b 45 08             	mov    0x8(%ebp),%eax
    b059:	0f b6 00             	movzbl (%eax),%eax
    b05c:	84 c0                	test   %al,%al
    b05e:	75 0a                	jne    b06a <namei+0x86>
    b060:	b8 00 00 00 00       	mov    $0x0,%eax
    b065:	e9 e8 00 00 00       	jmp    b152 <namei+0x16e>
    b06a:	8b 45 08             	mov    0x8(%ebp),%eax
    b06d:	0f b6 00             	movzbl (%eax),%eax
    b070:	3c 2f                	cmp    $0x2f,%al
    b072:	75 10                	jne    b084 <namei+0xa0>
    b074:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    b079:	8b 80 2e 02 00 00    	mov    0x22e(%eax),%eax
    b07f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b082:	eb 0e                	jmp    b092 <namei+0xae>
    b084:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    b089:	8b 80 2a 02 00 00    	mov    0x22a(%eax),%eax
    b08f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b092:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b095:	89 44 24 04          	mov    %eax,0x4(%esp)
    b099:	8b 45 08             	mov    0x8(%ebp),%eax
    b09c:	89 04 24             	mov    %eax,(%esp)
    b09f:	e8 b0 00 00 00       	call   b154 <get_name>
    b0a4:	89 45 ec             	mov    %eax,-0x14(%ebp)
    b0a7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b0aa:	89 45 08             	mov    %eax,0x8(%ebp)
    b0ad:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b0b0:	89 44 24 04          	mov    %eax,0x4(%esp)
    b0b4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b0b7:	89 04 24             	mov    %eax,(%esp)
    b0ba:	e8 34 01 00 00       	call   b1f3 <find_entry>
    b0bf:	89 45 e8             	mov    %eax,-0x18(%ebp)
    b0c2:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b0c5:	89 44 24 04          	mov    %eax,0x4(%esp)
    b0c9:	c7 04 24 67 22 01 00 	movl   $0x12267,(%esp)
    b0d0:	e8 b5 4c 00 00       	call   fd8a <printl>
    b0d5:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b0d8:	89 44 24 04          	mov    %eax,0x4(%esp)
    b0dc:	c7 04 24 70 22 01 00 	movl   $0x12270,(%esp)
    b0e3:	e8 a2 4c 00 00       	call   fd8a <printl>
    b0e8:	8b 45 e8             	mov    -0x18(%ebp),%eax
    b0eb:	89 44 24 04          	mov    %eax,0x4(%esp)
    b0ef:	c7 04 24 79 22 01 00 	movl   $0x12279,(%esp)
    b0f6:	e8 8f 4c 00 00       	call   fd8a <printl>
    b0fb:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
    b0ff:	75 07                	jne    b108 <namei+0x124>
    b101:	b8 00 00 00 00       	mov    $0x0,%eax
    b106:	eb 4a                	jmp    b152 <namei+0x16e>
    b108:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b10b:	8b 40 20             	mov    0x20(%eax),%eax
    b10e:	8b 55 e8             	mov    -0x18(%ebp),%edx
    b111:	89 54 24 04          	mov    %edx,0x4(%esp)
    b115:	89 04 24             	mov    %eax,(%esp)
    b118:	e8 f7 b4 ff ff       	call   6614 <get_inode>
    b11d:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b120:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    b124:	75 05                	jne    b12b <namei+0x147>
    b126:	8b 45 e8             	mov    -0x18(%ebp),%eax
    b129:	eb 27                	jmp    b152 <namei+0x16e>
    b12b:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b12e:	89 04 24             	mov    %eax,(%esp)
    b131:	e8 28 50 00 00       	call   1015e <strlen>
    b136:	89 44 24 08          	mov    %eax,0x8(%esp)
    b13a:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    b141:	00 
    b142:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b145:	89 04 24             	mov    %eax,(%esp)
    b148:	e8 d2 4f 00 00       	call   1011f <memset>
    b14d:	e9 40 ff ff ff       	jmp    b092 <namei+0xae>
    b152:	c9                   	leave  
    b153:	c3                   	ret    

0000b154 <get_name>:
    b154:	55                   	push   %ebp
    b155:	89 e5                	mov    %esp,%ebp
    b157:	83 ec 10             	sub    $0x10,%esp
    b15a:	8b 45 0c             	mov    0xc(%ebp),%eax
    b15d:	89 45 f8             	mov    %eax,-0x8(%ebp)
    b160:	8b 45 08             	mov    0x8(%ebp),%eax
    b163:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b166:	eb 04                	jmp    b16c <get_name+0x18>
    b168:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b16c:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b16f:	0f b6 00             	movzbl (%eax),%eax
    b172:	0f be c0             	movsbl %al,%eax
    b175:	89 45 fc             	mov    %eax,-0x4(%ebp)
    b178:	83 7d fc 2f          	cmpl   $0x2f,-0x4(%ebp)
    b17c:	74 ea                	je     b168 <get_name+0x14>
    b17e:	eb 29                	jmp    b1a9 <get_name+0x55>
    b180:	8b 45 0c             	mov    0xc(%ebp),%eax
    b183:	83 c0 0c             	add    $0xc,%eax
    b186:	3b 45 f8             	cmp    -0x8(%ebp),%eax
    b189:	76 0e                	jbe    b199 <get_name+0x45>
    b18b:	8b 45 fc             	mov    -0x4(%ebp),%eax
    b18e:	89 c2                	mov    %eax,%edx
    b190:	8b 45 f8             	mov    -0x8(%ebp),%eax
    b193:	88 10                	mov    %dl,(%eax)
    b195:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
    b199:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b19d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b1a0:	0f b6 00             	movzbl (%eax),%eax
    b1a3:	0f be c0             	movsbl %al,%eax
    b1a6:	89 45 fc             	mov    %eax,-0x4(%ebp)
    b1a9:	8b 45 08             	mov    0x8(%ebp),%eax
    b1ac:	83 e8 80             	sub    $0xffffff80,%eax
    b1af:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    b1b2:	76 0c                	jbe    b1c0 <get_name+0x6c>
    b1b4:	83 7d fc 2f          	cmpl   $0x2f,-0x4(%ebp)
    b1b8:	74 06                	je     b1c0 <get_name+0x6c>
    b1ba:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
    b1be:	75 c0                	jne    b180 <get_name+0x2c>
    b1c0:	83 7d fc 2f          	cmpl   $0x2f,-0x4(%ebp)
    b1c4:	74 17                	je     b1dd <get_name+0x89>
    b1c6:	b8 00 00 00 00       	mov    $0x0,%eax
    b1cb:	eb 24                	jmp    b1f1 <get_name+0x9d>
    b1cd:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b1d1:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b1d4:	0f b6 00             	movzbl (%eax),%eax
    b1d7:	0f be c0             	movsbl %al,%eax
    b1da:	89 45 fc             	mov    %eax,-0x4(%ebp)
    b1dd:	83 7d fc 2f          	cmpl   $0x2f,-0x4(%ebp)
    b1e1:	75 0b                	jne    b1ee <get_name+0x9a>
    b1e3:	8b 45 08             	mov    0x8(%ebp),%eax
    b1e6:	83 e8 80             	sub    $0xffffff80,%eax
    b1e9:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    b1ec:	77 df                	ja     b1cd <get_name+0x79>
    b1ee:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b1f1:	c9                   	leave  
    b1f2:	c3                   	ret    

0000b1f3 <find_entry>:
    b1f3:	55                   	push   %ebp
    b1f4:	89 e5                	mov    %esp,%ebp
    b1f6:	53                   	push   %ebx
    b1f7:	83 ec 44             	sub    $0x44,%esp
    b1fa:	8b 45 08             	mov    0x8(%ebp),%eax
    b1fd:	8b 40 08             	mov    0x8(%eax),%eax
    b200:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    b203:	8b 45 08             	mov    0x8(%ebp),%eax
    b206:	8b 40 04             	mov    0x4(%eax),%eax
    b209:	05 ff 01 00 00       	add    $0x1ff,%eax
    b20e:	c1 e8 09             	shr    $0x9,%eax
    b211:	89 45 e0             	mov    %eax,-0x20(%ebp)
    b214:	8b 45 08             	mov    0x8(%ebp),%eax
    b217:	8b 40 04             	mov    0x4(%eax),%eax
    b21a:	c1 e8 04             	shr    $0x4,%eax
    b21d:	89 45 dc             	mov    %eax,-0x24(%ebp)
    b220:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    b227:	8b 45 08             	mov    0x8(%ebp),%eax
    b22a:	8b 00                	mov    (%eax),%eax
    b22c:	3d 00 40 00 00       	cmp    $0x4000,%eax
    b231:	74 0a                	je     b23d <find_entry+0x4a>
    b233:	b8 00 00 00 00       	mov    $0x0,%eax
    b238:	e9 cd 00 00 00       	jmp    b30a <find_entry+0x117>
    b23d:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    b244:	e9 ad 00 00 00       	jmp    b2f6 <find_entry+0x103>
    b249:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    b24f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b252:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    b255:	8d 04 02             	lea    (%edx,%eax,1),%eax
    b258:	c1 e0 09             	shl    $0x9,%eax
    b25b:	89 c2                	mov    %eax,%edx
    b25d:	c1 fa 1f             	sar    $0x1f,%edx
    b260:	8b 4d 08             	mov    0x8(%ebp),%ecx
    b263:	8b 49 20             	mov    0x20(%ecx),%ecx
    b266:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    b26a:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    b271:	00 
    b272:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    b279:	00 
    b27a:	89 44 24 08          	mov    %eax,0x8(%esp)
    b27e:	89 54 24 0c          	mov    %edx,0xc(%esp)
    b282:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    b286:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    b28d:	e8 1c b1 ff ff       	call   63ae <rw_sector>
    b292:	a1 e8 32 01 00       	mov    0x132e8,%eax
    b297:	89 45 e8             	mov    %eax,-0x18(%ebp)
    b29a:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    b2a1:	eb 3c                	jmp    b2df <find_entry+0xec>
    b2a3:	8b 45 e8             	mov    -0x18(%ebp),%eax
    b2a6:	83 c0 04             	add    $0x4,%eax
    b2a9:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    b2b0:	00 
    b2b1:	89 44 24 04          	mov    %eax,0x4(%esp)
    b2b5:	8b 45 0c             	mov    0xc(%ebp),%eax
    b2b8:	89 04 24             	mov    %eax,(%esp)
    b2bb:	e8 9f 4f 00 00       	call   1025f <memcmp>
    b2c0:	85 c0                	test   %eax,%eax
    b2c2:	75 07                	jne    b2cb <find_entry+0xd8>
    b2c4:	8b 45 e8             	mov    -0x18(%ebp),%eax
    b2c7:	8b 00                	mov    (%eax),%eax
    b2c9:	eb 3f                	jmp    b30a <find_entry+0x117>
    b2cb:	83 45 ec 01          	addl   $0x1,-0x14(%ebp)
    b2cf:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b2d2:	3b 45 dc             	cmp    -0x24(%ebp),%eax
    b2d5:	7f 12                	jg     b2e9 <find_entry+0xf6>
    b2d7:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    b2db:	83 45 e8 10          	addl   $0x10,-0x18(%ebp)
    b2df:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b2e2:	83 f8 1f             	cmp    $0x1f,%eax
    b2e5:	76 bc                	jbe    b2a3 <find_entry+0xb0>
    b2e7:	eb 01                	jmp    b2ea <find_entry+0xf7>
    b2e9:	90                   	nop
    b2ea:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b2ed:	3b 45 dc             	cmp    -0x24(%ebp),%eax
    b2f0:	7f 12                	jg     b304 <find_entry+0x111>
    b2f2:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b2f6:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b2f9:	3b 45 e0             	cmp    -0x20(%ebp),%eax
    b2fc:	0f 8c 47 ff ff ff    	jl     b249 <find_entry+0x56>
    b302:	eb 01                	jmp    b305 <find_entry+0x112>
    b304:	90                   	nop
    b305:	b8 00 00 00 00       	mov    $0x0,%eax
    b30a:	83 c4 44             	add    $0x44,%esp
    b30d:	5b                   	pop    %ebx
    b30e:	5d                   	pop    %ebp
    b30f:	c3                   	ret    

0000b310 <search_file>:
    b310:	55                   	push   %ebp
    b311:	89 e5                	mov    %esp,%ebp
    b313:	81 ec a8 00 00 00    	sub    $0xa8,%esp
    b319:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    b320:	00 
    b321:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    b328:	00 
    b329:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
    b32f:	89 04 24             	mov    %eax,(%esp)
    b332:	e8 e8 4d 00 00       	call   1011f <memset>
    b337:	8d 85 70 ff ff ff    	lea    -0x90(%ebp),%eax
    b33d:	89 44 24 08          	mov    %eax,0x8(%esp)
    b341:	8b 45 08             	mov    0x8(%ebp),%eax
    b344:	89 44 24 04          	mov    %eax,0x4(%esp)
    b348:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
    b34e:	89 04 24             	mov    %eax,(%esp)
    b351:	e8 41 00 00 00       	call   b397 <strip_path>
    b356:	85 c0                	test   %eax,%eax
    b358:	74 07                	je     b361 <search_file+0x51>
    b35a:	b8 00 00 00 00       	mov    $0x0,%eax
    b35f:	eb 34                	jmp    b395 <search_file+0x85>
    b361:	0f b6 85 74 ff ff ff 	movzbl -0x8c(%ebp),%eax
    b368:	84 c0                	test   %al,%al
    b36a:	75 0b                	jne    b377 <search_file+0x67>
    b36c:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
    b372:	8b 40 28             	mov    0x28(%eax),%eax
    b375:	eb 1e                	jmp    b395 <search_file+0x85>
    b377:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
    b37d:	8d 95 74 ff ff ff    	lea    -0x8c(%ebp),%edx
    b383:	89 54 24 04          	mov    %edx,0x4(%esp)
    b387:	89 04 24             	mov    %eax,(%esp)
    b38a:	e8 64 fe ff ff       	call   b1f3 <find_entry>
    b38f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b392:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b395:	c9                   	leave  
    b396:	c3                   	ret    

0000b397 <strip_path>:
    b397:	55                   	push   %ebp
    b398:	89 e5                	mov    %esp,%ebp
    b39a:	83 ec 28             	sub    $0x28,%esp
    b39d:	8b 45 0c             	mov    0xc(%ebp),%eax
    b3a0:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b3a3:	8b 45 08             	mov    0x8(%ebp),%eax
    b3a6:	89 45 f0             	mov    %eax,-0x10(%ebp)
    b3a9:	8b 15 60 ed 04 00    	mov    0x4ed60,%edx
    b3af:	8b 45 10             	mov    0x10(%ebp),%eax
    b3b2:	89 10                	mov    %edx,(%eax)
    b3b4:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    b3b8:	75 0a                	jne    b3c4 <strip_path+0x2d>
    b3ba:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    b3bf:	e9 91 00 00 00       	jmp    b455 <strip_path+0xbe>
    b3c4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b3c7:	0f b6 00             	movzbl (%eax),%eax
    b3ca:	3c 2f                	cmp    $0x2f,%al
    b3cc:	75 71                	jne    b43f <strip_path+0xa8>
    b3ce:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b3d2:	eb 6c                	jmp    b440 <strip_path+0xa9>
    b3d4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b3d7:	0f b6 00             	movzbl (%eax),%eax
    b3da:	3c 2f                	cmp    $0x2f,%al
    b3dc:	75 4c                	jne    b42a <strip_path+0x93>
    b3de:	8b 45 10             	mov    0x10(%ebp),%eax
    b3e1:	8b 00                	mov    (%eax),%eax
    b3e3:	8b 55 08             	mov    0x8(%ebp),%edx
    b3e6:	89 54 24 04          	mov    %edx,0x4(%esp)
    b3ea:	89 04 24             	mov    %eax,(%esp)
    b3ed:	e8 01 fe ff ff       	call   b1f3 <find_entry>
    b3f2:	89 45 ec             	mov    %eax,-0x14(%ebp)
    b3f5:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    b3f9:	75 0d                	jne    b408 <strip_path+0x71>
    b3fb:	8b 45 10             	mov    0x10(%ebp),%eax
    b3fe:	8b 00                	mov    (%eax),%eax
    b400:	89 04 24             	mov    %eax,(%esp)
    b403:	e8 89 b3 ff ff       	call   6791 <put_inode>
    b408:	a1 60 ed 04 00       	mov    0x4ed60,%eax
    b40d:	8b 40 20             	mov    0x20(%eax),%eax
    b410:	8b 55 ec             	mov    -0x14(%ebp),%edx
    b413:	89 54 24 04          	mov    %edx,0x4(%esp)
    b417:	89 04 24             	mov    %eax,(%esp)
    b41a:	e8 f5 b1 ff ff       	call   6614 <get_inode>
    b41f:	8b 55 10             	mov    0x10(%ebp),%edx
    b422:	89 02                	mov    %eax,(%edx)
    b424:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b427:	c6 00 00             	movb   $0x0,(%eax)
    b42a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b42d:	0f b6 10             	movzbl (%eax),%edx
    b430:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b433:	88 10                	mov    %dl,(%eax)
    b435:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    b439:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    b43d:	eb 01                	jmp    b440 <strip_path+0xa9>
    b43f:	90                   	nop
    b440:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b443:	0f b6 00             	movzbl (%eax),%eax
    b446:	84 c0                	test   %al,%al
    b448:	75 8a                	jne    b3d4 <strip_path+0x3d>
    b44a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b44d:	c6 00 00             	movb   $0x0,(%eax)
    b450:	b8 00 00 00 00       	mov    $0x0,%eax
    b455:	c9                   	leave  
    b456:	c3                   	ret    
    b457:	90                   	nop
    b458:	90                   	nop
    b459:	90                   	nop
    b45a:	90                   	nop
    b45b:	90                   	nop
    b45c:	90                   	nop
    b45d:	90                   	nop
    b45e:	90                   	nop
    b45f:	90                   	nop

0000b460 <task_mm>:
    b460:	55                   	push   %ebp
    b461:	89 e5                	mov    %esp,%ebp
    b463:	83 ec 28             	sub    $0x28,%esp
    b466:	e8 a5 01 00 00       	call   b610 <init_mm>
    b46b:	eb 01                	jmp    b46e <task_mm+0xe>
    b46d:	90                   	nop
    b46e:	c7 44 24 08 80 ed 04 	movl   $0x4ed80,0x8(%esp)
    b475:	00 
    b476:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    b47d:	00 
    b47e:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    b485:	e8 ee 4c 00 00       	call   10178 <send_recv>
    b48a:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    b48f:	89 45 f0             	mov    %eax,-0x10(%ebp)
    b492:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    b499:	a1 84 ed 04 00       	mov    0x4ed84,%eax
    b49e:	89 45 ec             	mov    %eax,-0x14(%ebp)
    b4a1:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b4a4:	83 e8 1d             	sub    $0x1d,%eax
    b4a7:	83 f8 0f             	cmp    $0xf,%eax
    b4aa:	0f 87 f3 00 00 00    	ja     b5a3 <task_mm+0x143>
    b4b0:	8b 04 85 a0 22 01 00 	mov    0x122a0(,%eax,4),%eax
    b4b7:	ff e0                	jmp    *%eax
    b4b9:	e8 de 02 00 00       	call   b79c <do_fork>
    b4be:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b4c3:	e9 14 01 00 00       	jmp    b5dc <task_mm+0x17c>
    b4c8:	a1 88 ed 04 00       	mov    0x4ed88,%eax
    b4cd:	89 04 24             	mov    %eax,(%esp)
    b4d0:	e8 bf 06 00 00       	call   bb94 <do_exit>
    b4d5:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    b4dc:	e9 fb 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b4e1:	e8 3e 09 00 00       	call   be24 <do_exec>
    b4e6:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b4eb:	e9 ec 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b4f0:	e8 74 08 00 00       	call   bd69 <do_wait>
    b4f5:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    b4fc:	e9 db 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b501:	e8 42 0f 00 00       	call   c448 <do_kill>
    b506:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b50b:	e9 cc 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b510:	e8 ac 0f 00 00       	call   c4c1 <do_raise>
    b515:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b51a:	e9 bd 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b51f:	e8 de 9f ff ff       	call   5502 <do_brk>
    b524:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b529:	e9 ae 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b52e:	e8 89 9f ff ff       	call   54bc <do_acct>
    b533:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b538:	e9 9f 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b53d:	e8 43 7d ff ff       	call   3285 <do_getuid>
    b542:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b547:	e9 90 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b54c:	e8 18 7d ff ff       	call   3269 <do_setuid>
    b551:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b556:	e9 81 00 00 00       	jmp    b5dc <task_mm+0x17c>
    b55b:	e8 55 7d ff ff       	call   32b5 <do_getgid>
    b560:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b565:	eb 75                	jmp    b5dc <task_mm+0x17c>
    b567:	e8 2d 7d ff ff       	call   3299 <do_setgid>
    b56c:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b571:	eb 69                	jmp    b5dc <task_mm+0x17c>
    b573:	e8 51 7d ff ff       	call   32c9 <do_geteuid>
    b578:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b57d:	eb 5d                	jmp    b5dc <task_mm+0x17c>
    b57f:	e8 59 7d ff ff       	call   32dd <do_getegid>
    b584:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b589:	eb 51                	jmp    b5dc <task_mm+0x17c>
    b58b:	e8 a4 0c 00 00       	call   c234 <do_sigaction>
    b590:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b595:	eb 45                	jmp    b5dc <task_mm+0x17c>
    b597:	e8 f0 0d 00 00       	call   c38c <do_alarm>
    b59c:	a3 88 ed 04 00       	mov    %eax,0x4ed88
    b5a1:	eb 39                	jmp    b5dc <task_mm+0x17c>
    b5a3:	c7 44 24 04 80 ed 04 	movl   $0x4ed80,0x4(%esp)
    b5aa:	00 
    b5ab:	c7 04 24 84 22 01 00 	movl   $0x12284,(%esp)
    b5b2:	e8 d0 94 ff ff       	call   4a87 <dump_msg>
    b5b7:	c7 44 24 0c 6e 00 00 	movl   $0x6e,0xc(%esp)
    b5be:	00 
    b5bf:	c7 44 24 08 94 22 01 	movl   $0x12294,0x8(%esp)
    b5c6:	00 
    b5c7:	c7 44 24 04 94 22 01 	movl   $0x12294,0x4(%esp)
    b5ce:	00 
    b5cf:	c7 04 24 9b 22 01 00 	movl   $0x1229b,(%esp)
    b5d6:	e8 ef 4d 00 00       	call   103ca <assertion_failure>
    b5db:	90                   	nop
    b5dc:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    b5e0:	0f 84 87 fe ff ff    	je     b46d <task_mm+0xd>
    b5e6:	c7 05 84 ed 04 00 2d 	movl   $0x2d,0x4ed84
    b5ed:	00 00 00 
    b5f0:	c7 44 24 08 80 ed 04 	movl   $0x4ed80,0x8(%esp)
    b5f7:	00 
    b5f8:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b5fb:	89 44 24 04          	mov    %eax,0x4(%esp)
    b5ff:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    b606:	e8 6d 4b 00 00       	call   10178 <send_recv>
    b60b:	e9 5e fe ff ff       	jmp    b46e <task_mm+0xe>

0000b610 <init_mm>:
    b610:	55                   	push   %ebp
    b611:	89 e5                	mov    %esp,%ebp
    b613:	83 ec 38             	sub    $0x38,%esp
    b616:	8d 45 ec             	lea    -0x14(%ebp),%eax
    b619:	89 04 24             	mov    %eax,(%esp)
    b61c:	e8 13 9b ff ff       	call   5134 <get_boot_params>
    b621:	8b 45 ec             	mov    -0x14(%ebp),%eax
    b624:	a3 50 e8 04 00       	mov    %eax,0x4e850
    b629:	8b 45 f0             	mov    -0x10(%ebp),%eax
    b62c:	a3 dc 01 05 00       	mov    %eax,0x501dc
    b631:	a1 50 e8 04 00       	mov    0x4e850,%eax
    b636:	8d 90 ff ff 0f 00    	lea    0xfffff(%eax),%edx
    b63c:	85 c0                	test   %eax,%eax
    b63e:	0f 48 c2             	cmovs  %edx,%eax
    b641:	c1 f8 14             	sar    $0x14,%eax
    b644:	89 44 24 04          	mov    %eax,0x4(%esp)
    b648:	c7 04 24 e0 22 01 00 	movl   $0x122e0,(%esp)
    b64f:	e8 36 47 00 00       	call   fd8a <printl>
    b654:	8d 45 e4             	lea    -0x1c(%ebp),%eax
    b657:	89 44 24 04          	mov    %eax,0x4(%esp)
    b65b:	8d 45 e8             	lea    -0x18(%ebp),%eax
    b65e:	89 04 24             	mov    %eax,(%esp)
    b661:	e8 70 9b ff ff       	call   51d6 <get_kernel_map>
    b666:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b669:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    b66d:	75 2b                	jne    b69a <init_mm+0x8a>
    b66f:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b672:	89 c1                	mov    %eax,%ecx
    b674:	c1 e9 0a             	shr    $0xa,%ecx
    b677:	8b 55 e8             	mov    -0x18(%ebp),%edx
    b67a:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b67d:	01 c2                	add    %eax,%edx
    b67f:	8b 45 e8             	mov    -0x18(%ebp),%eax
    b682:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    b686:	89 54 24 08          	mov    %edx,0x8(%esp)
    b68a:	89 44 24 04          	mov    %eax,0x4(%esp)
    b68e:	c7 04 24 f0 22 01 00 	movl   $0x122f0,(%esp)
    b695:	e8 f0 46 00 00       	call   fd8a <printl>
    b69a:	c7 05 8c d6 04 00 00 	movl   $0xa00000,0x4d68c
    b6a1:	00 a0 00 
    b6a4:	c7 05 94 e7 04 00 00 	movl   $0x100000,0x4e794
    b6ab:	00 10 00 
    b6ae:	c7 05 60 0c 05 00 00 	movl   $0xc00000,0x50c60
    b6b5:	00 c0 00 
    b6b8:	c7 05 60 4b 01 00 00 	movl   $0x2d0000,0x14b60
    b6bf:	00 2d 00 
    b6c2:	c7 05 84 d6 04 00 00 	movl   $0xf00000,0x4d684
    b6c9:	00 f0 00 
    b6cc:	8b 15 50 e8 04 00    	mov    0x4e850,%edx
    b6d2:	a1 84 d6 04 00       	mov    0x4d684,%eax
    b6d7:	89 d1                	mov    %edx,%ecx
    b6d9:	29 c1                	sub    %eax,%ecx
    b6db:	89 c8                	mov    %ecx,%eax
    b6dd:	a3 48 44 01 00       	mov    %eax,0x14448
    b6e2:	a1 48 44 01 00       	mov    0x14448,%eax
    b6e7:	8d 90 ff ff 0f 00    	lea    0xfffff(%eax),%edx
    b6ed:	85 c0                	test   %eax,%eax
    b6ef:	0f 48 c2             	cmovs  %edx,%eax
    b6f2:	c1 f8 14             	sar    $0x14,%eax
    b6f5:	89 44 24 04          	mov    %eax,0x4(%esp)
    b6f9:	c7 04 24 12 23 01 00 	movl   $0x12312,(%esp)
    b700:	e8 85 46 00 00       	call   fd8a <printl>
    b705:	c9                   	leave  
    b706:	c3                   	ret    

0000b707 <alloc_mem>:
    b707:	55                   	push   %ebp
    b708:	89 e5                	mov    %esp,%ebp
    b70a:	83 ec 28             	sub    $0x28,%esp
    b70d:	83 7d 08 0d          	cmpl   $0xd,0x8(%ebp)
    b711:	7f 24                	jg     b737 <alloc_mem+0x30>
    b713:	c7 44 24 0c c5 00 00 	movl   $0xc5,0xc(%esp)
    b71a:	00 
    b71b:	c7 44 24 08 94 22 01 	movl   $0x12294,0x8(%esp)
    b722:	00 
    b723:	c7 44 24 04 94 22 01 	movl   $0x12294,0x4(%esp)
    b72a:	00 
    b72b:	c7 04 24 24 23 01 00 	movl   $0x12324,(%esp)
    b732:	e8 93 4c 00 00       	call   103ca <assertion_failure>
    b737:	81 7d 0c 00 00 10 00 	cmpl   $0x100000,0xc(%ebp)
    b73e:	7e 1b                	jle    b75b <alloc_mem+0x54>
    b740:	c7 44 24 08 00 00 10 	movl   $0x100000,0x8(%esp)
    b747:	00 
    b748:	8b 45 0c             	mov    0xc(%ebp),%eax
    b74b:	89 44 24 04          	mov    %eax,0x4(%esp)
    b74f:	c7 04 24 48 23 01 00 	movl   $0x12348,(%esp)
    b756:	e8 dc 67 ff ff       	call   1f37 <panic>
    b75b:	8b 45 08             	mov    0x8(%ebp),%eax
    b75e:	83 c0 01             	add    $0x1,%eax
    b761:	c1 e0 14             	shl    $0x14,%eax
    b764:	89 45 f4             	mov    %eax,-0xc(%ebp)
    b767:	8b 45 0c             	mov    0xc(%ebp),%eax
    b76a:	8b 55 f4             	mov    -0xc(%ebp),%edx
    b76d:	01 c2                	add    %eax,%edx
    b76f:	a1 50 e8 04 00       	mov    0x4e850,%eax
    b774:	39 c2                	cmp    %eax,%edx
    b776:	7c 13                	jl     b78b <alloc_mem+0x84>
    b778:	8b 45 08             	mov    0x8(%ebp),%eax
    b77b:	89 44 24 04          	mov    %eax,0x4(%esp)
    b77f:	c7 04 24 84 23 01 00 	movl   $0x12384,(%esp)
    b786:	e8 ac 67 ff ff       	call   1f37 <panic>
    b78b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    b78e:	c9                   	leave  
    b78f:	c3                   	ret    

0000b790 <free_mem>:
    b790:	55                   	push   %ebp
    b791:	89 e5                	mov    %esp,%ebp
    b793:	b8 00 00 00 00       	mov    $0x0,%eax
    b798:	5d                   	pop    %ebp
    b799:	c3                   	ret    
    b79a:	90                   	nop
    b79b:	90                   	nop

0000b79c <do_fork>:
    b79c:	55                   	push   %ebp
    b79d:	89 e5                	mov    %esp,%ebp
    b79f:	57                   	push   %edi
    b7a0:	56                   	push   %esi
    b7a1:	53                   	push   %ebx
    b7a2:	81 ec bc 00 00 00    	sub    $0xbc,%esp
    b7a8:	c7 45 e4 c0 0c 05 00 	movl   $0x50cc0,-0x1c(%ebp)
    b7af:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
    b7b6:	eb 16                	jmp    b7ce <do_fork+0x32>
    b7b8:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b7bb:	8b 40 72             	mov    0x72(%eax),%eax
    b7be:	83 f8 20             	cmp    $0x20,%eax
    b7c1:	74 13                	je     b7d6 <do_fork+0x3a>
    b7c3:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
    b7c7:	81 45 e4 36 03 00 00 	addl   $0x336,-0x1c(%ebp)
    b7ce:	83 7d e0 29          	cmpl   $0x29,-0x20(%ebp)
    b7d2:	7e e4                	jle    b7b8 <do_fork+0x1c>
    b7d4:	eb 01                	jmp    b7d7 <do_fork+0x3b>
    b7d6:	90                   	nop
    b7d7:	8b 45 e0             	mov    -0x20(%ebp),%eax
    b7da:	89 45 dc             	mov    %eax,-0x24(%ebp)
    b7dd:	8b 45 dc             	mov    -0x24(%ebp),%eax
    b7e0:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    b7e6:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    b7eb:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
    b7ee:	74 24                	je     b814 <do_fork+0x78>
    b7f0:	c7 44 24 0c 35 00 00 	movl   $0x35,0xc(%esp)
    b7f7:	00 
    b7f8:	c7 44 24 08 a8 23 01 	movl   $0x123a8,0x8(%esp)
    b7ff:	00 
    b800:	c7 44 24 04 a8 23 01 	movl   $0x123a8,0x4(%esp)
    b807:	00 
    b808:	c7 04 24 b3 23 01 00 	movl   $0x123b3,(%esp)
    b80f:	e8 b6 4b 00 00       	call   103ca <assertion_failure>
    b814:	83 7d dc 0d          	cmpl   $0xd,-0x24(%ebp)
    b818:	7f 24                	jg     b83e <do_fork+0xa2>
    b81a:	c7 44 24 0c 36 00 00 	movl   $0x36,0xc(%esp)
    b821:	00 
    b822:	c7 44 24 08 a8 23 01 	movl   $0x123a8,0x8(%esp)
    b829:	00 
    b82a:	c7 44 24 04 a8 23 01 	movl   $0x123a8,0x4(%esp)
    b831:	00 
    b832:	c7 04 24 d0 23 01 00 	movl   $0x123d0,(%esp)
    b839:	e8 8c 4b 00 00       	call   103ca <assertion_failure>
    b83e:	83 7d e0 2a          	cmpl   $0x2a,-0x20(%ebp)
    b842:	75 0a                	jne    b84e <do_fork+0xb2>
    b844:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    b849:	e9 3b 03 00 00       	jmp    bb89 <do_fork+0x3ed>
    b84e:	83 7d e0 29          	cmpl   $0x29,-0x20(%ebp)
    b852:	7e 24                	jle    b878 <do_fork+0xdc>
    b854:	c7 44 24 0c 39 00 00 	movl   $0x39,0xc(%esp)
    b85b:	00 
    b85c:	c7 44 24 08 a8 23 01 	movl   $0x123a8,0x8(%esp)
    b863:	00 
    b864:	c7 44 24 04 a8 23 01 	movl   $0x123a8,0x4(%esp)
    b86b:	00 
    b86c:	c7 04 24 f8 23 01 00 	movl   $0x123f8,(%esp)
    b873:	e8 52 4b 00 00       	call   103ca <assertion_failure>
    b878:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    b87d:	89 45 d8             	mov    %eax,-0x28(%ebp)
    b880:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b883:	0f b7 40 48          	movzwl 0x48(%eax),%eax
    b887:	66 89 45 d6          	mov    %ax,-0x2a(%ebp)
    b88b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b88e:	8b 55 d8             	mov    -0x28(%ebp),%edx
    b891:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    b897:	81 c2 c0 0c 05 00    	add    $0x50cc0,%edx
    b89d:	bb 36 03 00 00       	mov    $0x336,%ebx
    b8a2:	89 c1                	mov    %eax,%ecx
    b8a4:	83 e1 01             	and    $0x1,%ecx
    b8a7:	85 c9                	test   %ecx,%ecx
    b8a9:	74 0e                	je     b8b9 <do_fork+0x11d>
    b8ab:	0f b6 0a             	movzbl (%edx),%ecx
    b8ae:	88 08                	mov    %cl,(%eax)
    b8b0:	83 c0 01             	add    $0x1,%eax
    b8b3:	83 c2 01             	add    $0x1,%edx
    b8b6:	83 eb 01             	sub    $0x1,%ebx
    b8b9:	89 c1                	mov    %eax,%ecx
    b8bb:	83 e1 02             	and    $0x2,%ecx
    b8be:	85 c9                	test   %ecx,%ecx
    b8c0:	74 0f                	je     b8d1 <do_fork+0x135>
    b8c2:	0f b7 0a             	movzwl (%edx),%ecx
    b8c5:	66 89 08             	mov    %cx,(%eax)
    b8c8:	83 c0 02             	add    $0x2,%eax
    b8cb:	83 c2 02             	add    $0x2,%edx
    b8ce:	83 eb 02             	sub    $0x2,%ebx
    b8d1:	89 d9                	mov    %ebx,%ecx
    b8d3:	c1 e9 02             	shr    $0x2,%ecx
    b8d6:	89 c7                	mov    %eax,%edi
    b8d8:	89 d6                	mov    %edx,%esi
    b8da:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
    b8dc:	89 f2                	mov    %esi,%edx
    b8de:	89 f8                	mov    %edi,%eax
    b8e0:	b9 00 00 00 00       	mov    $0x0,%ecx
    b8e5:	89 de                	mov    %ebx,%esi
    b8e7:	83 e6 02             	and    $0x2,%esi
    b8ea:	85 f6                	test   %esi,%esi
    b8ec:	74 0b                	je     b8f9 <do_fork+0x15d>
    b8ee:	0f b7 34 0a          	movzwl (%edx,%ecx,1),%esi
    b8f2:	66 89 34 08          	mov    %si,(%eax,%ecx,1)
    b8f6:	83 c1 02             	add    $0x2,%ecx
    b8f9:	83 e3 01             	and    $0x1,%ebx
    b8fc:	85 db                	test   %ebx,%ebx
    b8fe:	74 07                	je     b907 <do_fork+0x16b>
    b900:	0f b6 14 0a          	movzbl (%edx,%ecx,1),%edx
    b904:	88 14 08             	mov    %dl,(%eax,%ecx,1)
    b907:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b90a:	0f b7 55 d6          	movzwl -0x2a(%ebp),%edx
    b90e:	66 89 50 48          	mov    %dx,0x48(%eax)
    b912:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b915:	8b 55 d8             	mov    -0x28(%ebp),%edx
    b918:	89 90 1a 02 00 00    	mov    %edx,0x21a(%eax)
    b91e:	8b 45 d8             	mov    -0x28(%ebp),%eax
    b921:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    b927:	83 c0 60             	add    $0x60,%eax
    b92a:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    b92f:	8d 48 02             	lea    0x2(%eax),%ecx
    b932:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    b935:	8d 50 62             	lea    0x62(%eax),%edx
    b938:	8b 45 dc             	mov    -0x24(%ebp),%eax
    b93b:	89 44 24 0c          	mov    %eax,0xc(%esp)
    b93f:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    b943:	c7 44 24 04 10 24 01 	movl   $0x12410,0x4(%esp)
    b94a:	00 
    b94b:	89 14 24             	mov    %edx,(%esp)
    b94e:	e8 70 47 00 00       	call   100c3 <sprintf>
    b953:	8b 45 d8             	mov    -0x28(%ebp),%eax
    b956:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    b95c:	83 c0 40             	add    $0x40,%eax
    b95f:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    b964:	83 c0 0a             	add    $0xa,%eax
    b967:	89 45 d0             	mov    %eax,-0x30(%ebp)
    b96a:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b96d:	0f b6 40 07          	movzbl 0x7(%eax),%eax
    b971:	0f b6 c0             	movzbl %al,%eax
    b974:	89 c2                	mov    %eax,%edx
    b976:	c1 e2 18             	shl    $0x18,%edx
    b979:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b97c:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    b980:	0f b6 c0             	movzbl %al,%eax
    b983:	c1 e0 10             	shl    $0x10,%eax
    b986:	01 c2                	add    %eax,%edx
    b988:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b98b:	0f b7 40 02          	movzwl 0x2(%eax),%eax
    b98f:	0f b7 c0             	movzwl %ax,%eax
    b992:	8d 04 02             	lea    (%edx,%eax,1),%eax
    b995:	89 45 cc             	mov    %eax,-0x34(%ebp)
    b998:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b99b:	0f b6 40 06          	movzbl 0x6(%eax),%eax
    b99f:	0f b6 c0             	movzbl %al,%eax
    b9a2:	83 e0 0f             	and    $0xf,%eax
    b9a5:	89 c2                	mov    %eax,%edx
    b9a7:	c1 e2 10             	shl    $0x10,%edx
    b9aa:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b9ad:	0f b7 00             	movzwl (%eax),%eax
    b9b0:	0f b7 c0             	movzwl %ax,%eax
    b9b3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    b9b6:	89 45 c8             	mov    %eax,-0x38(%ebp)
    b9b9:	8b 45 c8             	mov    -0x38(%ebp),%eax
    b9bc:	8d 50 01             	lea    0x1(%eax),%edx
    b9bf:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b9c2:	0f b6 40 06          	movzbl 0x6(%eax),%eax
    b9c6:	84 c0                	test   %al,%al
    b9c8:	79 07                	jns    b9d1 <do_fork+0x235>
    b9ca:	b8 00 10 00 00       	mov    $0x1000,%eax
    b9cf:	eb 05                	jmp    b9d6 <do_fork+0x23a>
    b9d1:	b8 01 00 00 00       	mov    $0x1,%eax
    b9d6:	0f af c2             	imul   %edx,%eax
    b9d9:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    b9dc:	8b 45 d8             	mov    -0x28(%ebp),%eax
    b9df:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    b9e5:	83 c0 48             	add    $0x48,%eax
    b9e8:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    b9ed:	83 c0 0a             	add    $0xa,%eax
    b9f0:	89 45 d0             	mov    %eax,-0x30(%ebp)
    b9f3:	8b 45 d0             	mov    -0x30(%ebp),%eax
    b9f6:	0f b6 40 07          	movzbl 0x7(%eax),%eax
    b9fa:	0f b6 c0             	movzbl %al,%eax
    b9fd:	89 c2                	mov    %eax,%edx
    b9ff:	c1 e2 18             	shl    $0x18,%edx
    ba02:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ba05:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    ba09:	0f b6 c0             	movzbl %al,%eax
    ba0c:	c1 e0 10             	shl    $0x10,%eax
    ba0f:	01 c2                	add    %eax,%edx
    ba11:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ba14:	0f b7 40 02          	movzwl 0x2(%eax),%eax
    ba18:	0f b7 c0             	movzwl %ax,%eax
    ba1b:	8d 04 02             	lea    (%edx,%eax,1),%eax
    ba1e:	89 45 c0             	mov    %eax,-0x40(%ebp)
    ba21:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ba24:	0f b6 40 06          	movzbl 0x6(%eax),%eax
    ba28:	0f b6 c0             	movzbl %al,%eax
    ba2b:	83 e0 0f             	and    $0xf,%eax
    ba2e:	89 c2                	mov    %eax,%edx
    ba30:	c1 e2 10             	shl    $0x10,%edx
    ba33:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ba36:	0f b7 00             	movzwl (%eax),%eax
    ba39:	0f b7 c0             	movzwl %ax,%eax
    ba3c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    ba3f:	89 45 bc             	mov    %eax,-0x44(%ebp)
    ba42:	8b 45 c8             	mov    -0x38(%ebp),%eax
    ba45:	8d 50 01             	lea    0x1(%eax),%edx
    ba48:	8b 45 d0             	mov    -0x30(%ebp),%eax
    ba4b:	0f b6 40 06          	movzbl 0x6(%eax),%eax
    ba4f:	84 c0                	test   %al,%al
    ba51:	79 07                	jns    ba5a <do_fork+0x2be>
    ba53:	b8 00 10 00 00       	mov    $0x1000,%eax
    ba58:	eb 05                	jmp    ba5f <do_fork+0x2c3>
    ba5a:	b8 01 00 00 00       	mov    $0x1,%eax
    ba5f:	0f af c2             	imul   %edx,%eax
    ba62:	89 45 b8             	mov    %eax,-0x48(%ebp)
    ba65:	8b 45 cc             	mov    -0x34(%ebp),%eax
    ba68:	3b 45 c0             	cmp    -0x40(%ebp),%eax
    ba6b:	75 10                	jne    ba7d <do_fork+0x2e1>
    ba6d:	8b 45 c8             	mov    -0x38(%ebp),%eax
    ba70:	3b 45 bc             	cmp    -0x44(%ebp),%eax
    ba73:	75 08                	jne    ba7d <do_fork+0x2e1>
    ba75:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    ba78:	3b 45 b8             	cmp    -0x48(%ebp),%eax
    ba7b:	74 24                	je     baa1 <do_fork+0x305>
    ba7d:	c7 44 24 0c 69 00 00 	movl   $0x69,0xc(%esp)
    ba84:	00 
    ba85:	c7 44 24 08 a8 23 01 	movl   $0x123a8,0x8(%esp)
    ba8c:	00 
    ba8d:	c7 44 24 04 a8 23 01 	movl   $0x123a8,0x4(%esp)
    ba94:	00 
    ba95:	c7 04 24 18 24 01 00 	movl   $0x12418,(%esp)
    ba9c:	e8 29 49 00 00       	call   103ca <assertion_failure>
    baa1:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    baa4:	89 44 24 04          	mov    %eax,0x4(%esp)
    baa8:	8b 45 dc             	mov    -0x24(%ebp),%eax
    baab:	89 04 24             	mov    %eax,(%esp)
    baae:	e8 54 fc ff ff       	call   b707 <alloc_mem>
    bab3:	89 45 b4             	mov    %eax,-0x4c(%ebp)
    bab6:	8b 55 cc             	mov    -0x34(%ebp),%edx
    bab9:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    babc:	8b 4d c4             	mov    -0x3c(%ebp),%ecx
    babf:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    bac3:	89 54 24 04          	mov    %edx,0x4(%esp)
    bac7:	89 04 24             	mov    %eax,(%esp)
    baca:	e8 21 46 00 00       	call   100f0 <memcpy>
    bacf:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    bad2:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    bad5:	83 c2 4a             	add    $0x4a,%edx
    bad8:	c7 44 24 0c f8 c0 00 	movl   $0xc0f8,0xc(%esp)
    badf:	00 
    bae0:	c7 44 24 08 ff 00 00 	movl   $0xff,0x8(%esp)
    bae7:	00 
    bae8:	89 44 24 04          	mov    %eax,0x4(%esp)
    baec:	89 14 24             	mov    %edx,(%esp)
    baef:	e8 92 6d ff ff       	call   2886 <init_desc>
    baf4:	8b 45 b4             	mov    -0x4c(%ebp),%eax
    baf7:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    bafa:	83 c2 52             	add    $0x52,%edx
    bafd:	c7 44 24 0c f2 c0 00 	movl   $0xc0f2,0xc(%esp)
    bb04:	00 
    bb05:	c7 44 24 08 ff 00 00 	movl   $0xff,0x8(%esp)
    bb0c:	00 
    bb0d:	89 44 24 04          	mov    %eax,0x4(%esp)
    bb11:	89 14 24             	mov    %edx,(%esp)
    bb14:	e8 6d 6d ff ff       	call   2886 <init_desc>
    bb19:	c7 45 88 2b 00 00 00 	movl   $0x2b,-0x78(%ebp)
    bb20:	8b 45 dc             	mov    -0x24(%ebp),%eax
    bb23:	89 45 90             	mov    %eax,-0x70(%ebp)
    bb26:	8d 45 84             	lea    -0x7c(%ebp),%eax
    bb29:	89 44 24 08          	mov    %eax,0x8(%esp)
    bb2d:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
    bb34:	00 
    bb35:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    bb3c:	e8 37 46 00 00       	call   10178 <send_recv>
    bb41:	8b 45 dc             	mov    -0x24(%ebp),%eax
    bb44:	a3 8c ed 04 00       	mov    %eax,0x4ed8c
    bb49:	c7 85 58 ff ff ff 2d 	movl   $0x2d,-0xa8(%ebp)
    bb50:	00 00 00 
    bb53:	c7 85 5c ff ff ff 00 	movl   $0x0,-0xa4(%ebp)
    bb5a:	00 00 00 
    bb5d:	c7 85 60 ff ff ff 00 	movl   $0x0,-0xa0(%ebp)
    bb64:	00 00 00 
    bb67:	8d 85 54 ff ff ff    	lea    -0xac(%ebp),%eax
    bb6d:	89 44 24 08          	mov    %eax,0x8(%esp)
    bb71:	8b 45 dc             	mov    -0x24(%ebp),%eax
    bb74:	89 44 24 04          	mov    %eax,0x4(%esp)
    bb78:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    bb7f:	e8 f4 45 00 00       	call   10178 <send_recv>
    bb84:	b8 00 00 00 00       	mov    $0x0,%eax
    bb89:	81 c4 bc 00 00 00    	add    $0xbc,%esp
    bb8f:	5b                   	pop    %ebx
    bb90:	5e                   	pop    %esi
    bb91:	5f                   	pop    %edi
    bb92:	5d                   	pop    %ebp
    bb93:	c3                   	ret    

0000bb94 <do_exit>:
    bb94:	55                   	push   %ebp
    bb95:	89 e5                	mov    %esp,%ebp
    bb97:	83 ec 58             	sub    $0x58,%esp
    bb9a:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    bb9f:	89 45 f0             	mov    %eax,-0x10(%ebp)
    bba2:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bba5:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bbab:	05 d0 0e 05 00       	add    $0x50ed0,%eax
    bbb0:	8b 40 0a             	mov    0xa(%eax),%eax
    bbb3:	89 45 ec             	mov    %eax,-0x14(%ebp)
    bbb6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bbb9:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bbbf:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    bbc4:	89 45 e8             	mov    %eax,-0x18(%ebp)
    bbc7:	c7 45 bc 2c 00 00 00 	movl   $0x2c,-0x44(%ebp)
    bbce:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bbd1:	89 45 c4             	mov    %eax,-0x3c(%ebp)
    bbd4:	8d 45 b8             	lea    -0x48(%ebp),%eax
    bbd7:	89 44 24 08          	mov    %eax,0x8(%esp)
    bbdb:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
    bbe2:	00 
    bbe3:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    bbea:	e8 89 45 00 00       	call   10178 <send_recv>
    bbef:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bbf2:	89 04 24             	mov    %eax,(%esp)
    bbf5:	e8 96 fb ff ff       	call   b790 <free_mem>
    bbfa:	8b 45 e8             	mov    -0x18(%ebp),%eax
    bbfd:	8b 55 08             	mov    0x8(%ebp),%edx
    bc00:	89 90 32 02 00 00    	mov    %edx,0x232(%eax)
    bc06:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bc09:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc0f:	05 30 0d 05 00       	add    $0x50d30,%eax
    bc14:	8b 40 02             	mov    0x2(%eax),%eax
    bc17:	83 e0 08             	and    $0x8,%eax
    bc1a:	85 c0                	test   %eax,%eax
    bc1c:	74 3f                	je     bc5d <do_exit+0xc9>
    bc1e:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bc21:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc27:	05 30 0d 05 00       	add    $0x50d30,%eax
    bc2c:	8b 40 02             	mov    0x2(%eax),%eax
    bc2f:	89 c2                	mov    %eax,%edx
    bc31:	83 e2 f7             	and    $0xfffffff7,%edx
    bc34:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bc37:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc3d:	05 30 0d 05 00       	add    $0x50d30,%eax
    bc42:	89 50 02             	mov    %edx,0x2(%eax)
    bc45:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bc48:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc4e:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    bc53:	89 04 24             	mov    %eax,(%esp)
    bc56:	e8 b0 00 00 00       	call   bd0b <cleanup>
    bc5b:	eb 27                	jmp    bc84 <do_exit+0xf0>
    bc5d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bc60:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc66:	05 30 0d 05 00       	add    $0x50d30,%eax
    bc6b:	8b 40 02             	mov    0x2(%eax),%eax
    bc6e:	89 c2                	mov    %eax,%edx
    bc70:	83 ca 10             	or     $0x10,%edx
    bc73:	8b 45 f0             	mov    -0x10(%ebp),%eax
    bc76:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc7c:	05 30 0d 05 00       	add    $0x50d30,%eax
    bc81:	89 50 02             	mov    %edx,0x2(%eax)
    bc84:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    bc8b:	eb 76                	jmp    bd03 <do_exit+0x16f>
    bc8d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    bc90:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bc96:	05 d0 0e 05 00       	add    $0x50ed0,%eax
    bc9b:	8b 40 0a             	mov    0xa(%eax),%eax
    bc9e:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    bca1:	75 5c                	jne    bcff <do_exit+0x16b>
    bca3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    bca6:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bcac:	05 d0 0e 05 00       	add    $0x50ed0,%eax
    bcb1:	c7 40 0a 0a 00 00 00 	movl   $0xa,0xa(%eax)
    bcb8:	a1 4e 2d 05 00       	mov    0x52d4e,%eax
    bcbd:	83 e0 08             	and    $0x8,%eax
    bcc0:	85 c0                	test   %eax,%eax
    bcc2:	74 3b                	je     bcff <do_exit+0x16b>
    bcc4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    bcc7:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bccd:	05 30 0d 05 00       	add    $0x50d30,%eax
    bcd2:	8b 40 02             	mov    0x2(%eax),%eax
    bcd5:	83 e0 10             	and    $0x10,%eax
    bcd8:	85 c0                	test   %eax,%eax
    bcda:	74 23                	je     bcff <do_exit+0x16b>
    bcdc:	a1 4e 2d 05 00       	mov    0x52d4e,%eax
    bce1:	83 e0 f7             	and    $0xfffffff7,%eax
    bce4:	a3 4e 2d 05 00       	mov    %eax,0x52d4e
    bce9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    bcec:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bcf2:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    bcf7:	89 04 24             	mov    %eax,(%esp)
    bcfa:	e8 0c 00 00 00       	call   bd0b <cleanup>
    bcff:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    bd03:	83 7d f4 29          	cmpl   $0x29,-0xc(%ebp)
    bd07:	7e 84                	jle    bc8d <do_exit+0xf9>
    bd09:	c9                   	leave  
    bd0a:	c3                   	ret    

0000bd0b <cleanup>:
    bd0b:	55                   	push   %ebp
    bd0c:	89 e5                	mov    %esp,%ebp
    bd0e:	83 ec 48             	sub    $0x48,%esp
    bd11:	c7 45 cc 2d 00 00 00 	movl   $0x2d,-0x34(%ebp)
    bd18:	8b 55 08             	mov    0x8(%ebp),%edx
    bd1b:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    bd20:	89 d1                	mov    %edx,%ecx
    bd22:	29 c1                	sub    %eax,%ecx
    bd24:	89 c8                	mov    %ecx,%eax
    bd26:	d1 f8                	sar    %eax
    bd28:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    bd2e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    bd31:	8b 45 08             	mov    0x8(%ebp),%eax
    bd34:	8b 80 32 02 00 00    	mov    0x232(%eax),%eax
    bd3a:	89 45 d0             	mov    %eax,-0x30(%ebp)
    bd3d:	8b 45 08             	mov    0x8(%ebp),%eax
    bd40:	8b 80 1a 02 00 00    	mov    0x21a(%eax),%eax
    bd46:	8d 55 c8             	lea    -0x38(%ebp),%edx
    bd49:	89 54 24 08          	mov    %edx,0x8(%esp)
    bd4d:	89 44 24 04          	mov    %eax,0x4(%esp)
    bd51:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    bd58:	e8 1b 44 00 00       	call   10178 <send_recv>
    bd5d:	8b 45 08             	mov    0x8(%ebp),%eax
    bd60:	c7 40 72 20 00 00 00 	movl   $0x20,0x72(%eax)
    bd67:	c9                   	leave  
    bd68:	c3                   	ret    

0000bd69 <do_wait>:
    bd69:	55                   	push   %ebp
    bd6a:	89 e5                	mov    %esp,%ebp
    bd6c:	83 ec 58             	sub    $0x58,%esp
    bd6f:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    bd74:	89 45 e8             	mov    %eax,-0x18(%ebp)
    bd77:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    bd7e:	c7 45 ec c0 0c 05 00 	movl   $0x50cc0,-0x14(%ebp)
    bd85:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    bd8c:	eb 37                	jmp    bdc5 <do_wait+0x5c>
    bd8e:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bd91:	8b 80 1a 02 00 00    	mov    0x21a(%eax),%eax
    bd97:	3b 45 e8             	cmp    -0x18(%ebp),%eax
    bd9a:	75 1e                	jne    bdba <do_wait+0x51>
    bd9c:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    bda0:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bda3:	8b 40 72             	mov    0x72(%eax),%eax
    bda6:	83 e0 10             	and    $0x10,%eax
    bda9:	85 c0                	test   %eax,%eax
    bdab:	74 0d                	je     bdba <do_wait+0x51>
    bdad:	8b 45 ec             	mov    -0x14(%ebp),%eax
    bdb0:	89 04 24             	mov    %eax,(%esp)
    bdb3:	e8 53 ff ff ff       	call   bd0b <cleanup>
    bdb8:	eb 68                	jmp    be22 <do_wait+0xb9>
    bdba:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    bdbe:	81 45 ec 36 03 00 00 	addl   $0x336,-0x14(%ebp)
    bdc5:	83 7d f4 29          	cmpl   $0x29,-0xc(%ebp)
    bdc9:	7e c3                	jle    bd8e <do_wait+0x25>
    bdcb:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    bdcf:	74 29                	je     bdfa <do_wait+0x91>
    bdd1:	8b 45 e8             	mov    -0x18(%ebp),%eax
    bdd4:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bdda:	05 30 0d 05 00       	add    $0x50d30,%eax
    bddf:	8b 40 02             	mov    0x2(%eax),%eax
    bde2:	89 c2                	mov    %eax,%edx
    bde4:	83 ca 08             	or     $0x8,%edx
    bde7:	8b 45 e8             	mov    -0x18(%ebp),%eax
    bdea:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    bdf0:	05 30 0d 05 00       	add    $0x50d30,%eax
    bdf5:	89 50 02             	mov    %edx,0x2(%eax)
    bdf8:	eb 28                	jmp    be22 <do_wait+0xb9>
    bdfa:	c7 45 bc 2d 00 00 00 	movl   $0x2d,-0x44(%ebp)
    be01:	c7 45 c4 3e 00 00 00 	movl   $0x3e,-0x3c(%ebp)
    be08:	8d 45 b8             	lea    -0x48(%ebp),%eax
    be0b:	89 44 24 08          	mov    %eax,0x8(%esp)
    be0f:	8b 45 e8             	mov    -0x18(%ebp),%eax
    be12:	89 44 24 04          	mov    %eax,0x4(%esp)
    be16:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    be1d:	e8 56 43 00 00       	call   10178 <send_recv>
    be22:	c9                   	leave  
    be23:	c3                   	ret    

0000be24 <do_exec>:
    be24:	55                   	push   %ebp
    be25:	89 e5                	mov    %esp,%ebp
    be27:	56                   	push   %esi
    be28:	53                   	push   %ebx
    be29:	81 ec e0 04 00 00    	sub    $0x4e0,%esp
    be2f:	a1 8c ed 04 00       	mov    0x4ed8c,%eax
    be34:	89 45 e8             	mov    %eax,-0x18(%ebp)
    be37:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    be3c:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    be3f:	83 7d e8 7f          	cmpl   $0x7f,-0x18(%ebp)
    be43:	7e 24                	jle    be69 <do_exec+0x45>
    be45:	c7 44 24 0c 2e 00 00 	movl   $0x2e,0xc(%esp)
    be4c:	00 
    be4d:	c7 44 24 08 8c 24 01 	movl   $0x1248c,0x8(%esp)
    be54:	00 
    be55:	c7 44 24 04 8c 24 01 	movl   $0x1248c,0x4(%esp)
    be5c:	00 
    be5d:	c7 04 24 93 24 01 00 	movl   $0x12493,(%esp)
    be64:	e8 61 45 00 00       	call   103ca <assertion_failure>
    be69:	a1 a8 ed 04 00       	mov    0x4eda8,%eax
    be6e:	89 44 24 04          	mov    %eax,0x4(%esp)
    be72:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    be75:	89 04 24             	mov    %eax,(%esp)
    be78:	e8 58 76 ff ff       	call   34d5 <va2la>
    be7d:	89 c3                	mov    %eax,%ebx
    be7f:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    be85:	89 44 24 04          	mov    %eax,0x4(%esp)
    be89:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    be90:	e8 40 76 ff ff       	call   34d5 <va2la>
    be95:	8b 55 e8             	mov    -0x18(%ebp),%edx
    be98:	89 54 24 08          	mov    %edx,0x8(%esp)
    be9c:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    bea0:	89 04 24             	mov    %eax,(%esp)
    bea3:	e8 48 42 00 00       	call   100f0 <memcpy>
    bea8:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    beae:	03 45 e8             	add    -0x18(%ebp),%eax
    beb1:	c6 00 00             	movb   $0x0,(%eax)
    beb4:	8d 85 34 ff ff ff    	lea    -0xcc(%ebp),%eax
    beba:	89 44 24 04          	mov    %eax,0x4(%esp)
    bebe:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    bec4:	89 04 24             	mov    %eax,(%esp)
    bec7:	e8 38 47 00 00       	call   10604 <stat>
    becc:	89 45 e0             	mov    %eax,-0x20(%ebp)
    becf:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    bed3:	74 20                	je     bef5 <do_exec+0xd1>
    bed5:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    bedb:	89 44 24 04          	mov    %eax,0x4(%esp)
    bedf:	c7 04 24 a8 24 01 00 	movl   $0x124a8,(%esp)
    bee6:	e8 9f 3e 00 00       	call   fd8a <printl>
    beeb:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    bef0:	e9 d2 02 00 00       	jmp    c1c7 <do_exec+0x3a3>
    bef5:	c7 44 24 04 02 00 00 	movl   $0x2,0x4(%esp)
    befc:	00 
    befd:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    bf03:	89 04 24             	mov    %eax,(%esp)
    bf06:	e8 c5 44 00 00       	call   103d0 <open>
    bf0b:	89 45 dc             	mov    %eax,-0x24(%ebp)
    bf0e:	83 7d dc ff          	cmpl   $0xffffffff,-0x24(%ebp)
    bf12:	75 0a                	jne    bf1e <do_exec+0xfa>
    bf14:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    bf19:	e9 a9 02 00 00       	jmp    c1c7 <do_exec+0x3a3>
    bf1e:	8b 95 44 ff ff ff    	mov    -0xbc(%ebp),%edx
    bf24:	a1 f8 0b 01 00       	mov    0x10bf8,%eax
    bf29:	39 c2                	cmp    %eax,%edx
    bf2b:	7c 24                	jl     bf51 <do_exec+0x12d>
    bf2d:	c7 44 24 0c 42 00 00 	movl   $0x42,0xc(%esp)
    bf34:	00 
    bf35:	c7 44 24 08 8c 24 01 	movl   $0x1248c,0x8(%esp)
    bf3c:	00 
    bf3d:	c7 44 24 04 8c 24 01 	movl   $0x1248c,0x4(%esp)
    bf44:	00 
    bf45:	c7 04 24 d0 24 01 00 	movl   $0x124d0,(%esp)
    bf4c:	e8 79 44 00 00       	call   103ca <assertion_failure>
    bf51:	8b 95 44 ff ff ff    	mov    -0xbc(%ebp),%edx
    bf57:	a1 ec 32 01 00       	mov    0x132ec,%eax
    bf5c:	89 54 24 08          	mov    %edx,0x8(%esp)
    bf60:	89 44 24 04          	mov    %eax,0x4(%esp)
    bf64:	8b 45 dc             	mov    -0x24(%ebp),%eax
    bf67:	89 04 24             	mov    %eax,(%esp)
    bf6a:	e8 45 45 00 00       	call   104b4 <read>
    bf6f:	8b 45 dc             	mov    -0x24(%ebp),%eax
    bf72:	89 04 24             	mov    %eax,(%esp)
    bf75:	e8 ba 45 00 00       	call   10534 <close>
    bf7a:	a1 ec 32 01 00       	mov    0x132ec,%eax
    bf7f:	89 45 d8             	mov    %eax,-0x28(%ebp)
    bf82:	8b 45 d8             	mov    -0x28(%ebp),%eax
    bf85:	0f b6 00             	movzbl (%eax),%eax
    bf88:	3c 7f                	cmp    $0x7f,%al
    bf8a:	74 0a                	je     bf96 <do_exec+0x172>
    bf8c:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
    bf91:	e9 31 02 00 00       	jmp    c1c7 <do_exec+0x3a3>
    bf96:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    bf9d:	e9 bd 00 00 00       	jmp    c05f <do_exec+0x23b>
    bfa2:	8b 15 ec 32 01 00    	mov    0x132ec,%edx
    bfa8:	8b 45 d8             	mov    -0x28(%ebp),%eax
    bfab:	8b 48 1c             	mov    0x1c(%eax),%ecx
    bfae:	8b 45 d8             	mov    -0x28(%ebp),%eax
    bfb1:	0f b7 40 2a          	movzwl 0x2a(%eax),%eax
    bfb5:	0f b7 c0             	movzwl %ax,%eax
    bfb8:	0f af 45 f4          	imul   -0xc(%ebp),%eax
    bfbc:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    bfbf:	8d 04 02             	lea    (%edx,%eax,1),%eax
    bfc2:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    bfc5:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    bfc8:	8b 00                	mov    (%eax),%eax
    bfca:	83 f8 01             	cmp    $0x1,%eax
    bfcd:	0f 85 88 00 00 00    	jne    c05b <do_exec+0x237>
    bfd3:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    bfd6:	8b 50 08             	mov    0x8(%eax),%edx
    bfd9:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    bfdc:	8b 40 14             	mov    0x14(%eax),%eax
    bfdf:	8d 04 02             	lea    (%edx,%eax,1),%eax
    bfe2:	3d ff ff 0f 00       	cmp    $0xfffff,%eax
    bfe7:	76 24                	jbe    c00d <do_exec+0x1e9>
    bfe9:	c7 44 24 0c 51 00 00 	movl   $0x51,0xc(%esp)
    bff0:	00 
    bff1:	c7 44 24 08 8c 24 01 	movl   $0x1248c,0x8(%esp)
    bff8:	00 
    bff9:	c7 44 24 04 8c 24 01 	movl   $0x1248c,0x4(%esp)
    c000:	00 
    c001:	c7 04 24 e8 24 01 00 	movl   $0x124e8,(%esp)
    c008:	e8 bd 43 00 00       	call   103ca <assertion_failure>
    c00d:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    c010:	8b 40 10             	mov    0x10(%eax),%eax
    c013:	89 c6                	mov    %eax,%esi
    c015:	8b 15 ec 32 01 00    	mov    0x132ec,%edx
    c01b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    c01e:	8b 40 04             	mov    0x4(%eax),%eax
    c021:	8d 04 02             	lea    (%edx,%eax,1),%eax
    c024:	89 44 24 04          	mov    %eax,0x4(%esp)
    c028:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    c02f:	e8 a1 74 ff ff       	call   34d5 <va2la>
    c034:	89 c3                	mov    %eax,%ebx
    c036:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    c039:	8b 40 08             	mov    0x8(%eax),%eax
    c03c:	89 44 24 04          	mov    %eax,0x4(%esp)
    c040:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    c043:	89 04 24             	mov    %eax,(%esp)
    c046:	e8 8a 74 ff ff       	call   34d5 <va2la>
    c04b:	89 74 24 08          	mov    %esi,0x8(%esp)
    c04f:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    c053:	89 04 24             	mov    %eax,(%esp)
    c056:	e8 95 40 00 00       	call   100f0 <memcpy>
    c05b:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    c05f:	8b 45 d8             	mov    -0x28(%ebp),%eax
    c062:	0f b7 40 2c          	movzwl 0x2c(%eax),%eax
    c066:	0f b7 c0             	movzwl %ax,%eax
    c069:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    c06c:	0f 8f 30 ff ff ff    	jg     bfa2 <do_exec+0x17e>
    c072:	a1 90 ed 04 00       	mov    0x4ed90,%eax
    c077:	89 45 d0             	mov    %eax,-0x30(%ebp)
    c07a:	a1 ac ed 04 00       	mov    0x4edac,%eax
    c07f:	89 44 24 04          	mov    %eax,0x4(%esp)
    c083:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    c086:	89 04 24             	mov    %eax,(%esp)
    c089:	e8 47 74 ff ff       	call   34d5 <va2la>
    c08e:	89 c3                	mov    %eax,%ebx
    c090:	8d 85 34 fb ff ff    	lea    -0x4cc(%ebp),%eax
    c096:	89 44 24 04          	mov    %eax,0x4(%esp)
    c09a:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    c0a1:	e8 2f 74 ff ff       	call   34d5 <va2la>
    c0a6:	8b 55 d0             	mov    -0x30(%ebp),%edx
    c0a9:	89 54 24 08          	mov    %edx,0x8(%esp)
    c0ad:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    c0b1:	89 04 24             	mov    %eax,(%esp)
    c0b4:	e8 37 40 00 00       	call   100f0 <memcpy>
    c0b9:	c7 45 cc 00 fc 0f 00 	movl   $0xffc00,-0x34(%ebp)
    c0c0:	8b 55 cc             	mov    -0x34(%ebp),%edx
    c0c3:	a1 ac ed 04 00       	mov    0x4edac,%eax
    c0c8:	89 d1                	mov    %edx,%ecx
    c0ca:	29 c1                	sub    %eax,%ecx
    c0cc:	89 c8                	mov    %ecx,%eax
    c0ce:	89 45 c8             	mov    %eax,-0x38(%ebp)
    c0d1:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    c0d8:	83 7d d0 00          	cmpl   $0x0,-0x30(%ebp)
    c0dc:	74 2b                	je     c109 <do_exec+0x2e5>
    c0de:	8d 85 34 fb ff ff    	lea    -0x4cc(%ebp),%eax
    c0e4:	89 45 ec             	mov    %eax,-0x14(%ebp)
    c0e7:	eb 17                	jmp    c100 <do_exec+0x2dc>
    c0e9:	8b 45 ec             	mov    -0x14(%ebp),%eax
    c0ec:	8b 10                	mov    (%eax),%edx
    c0ee:	8b 45 c8             	mov    -0x38(%ebp),%eax
    c0f1:	01 c2                	add    %eax,%edx
    c0f3:	8b 45 ec             	mov    -0x14(%ebp),%eax
    c0f6:	89 10                	mov    %edx,(%eax)
    c0f8:	83 45 ec 04          	addl   $0x4,-0x14(%ebp)
    c0fc:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    c100:	8b 45 ec             	mov    -0x14(%ebp),%eax
    c103:	8b 00                	mov    (%eax),%eax
    c105:	85 c0                	test   %eax,%eax
    c107:	75 e0                	jne    c0e9 <do_exec+0x2c5>
    c109:	8d 85 34 fb ff ff    	lea    -0x4cc(%ebp),%eax
    c10f:	89 44 24 04          	mov    %eax,0x4(%esp)
    c113:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    c11a:	e8 b6 73 ff ff       	call   34d5 <va2la>
    c11f:	89 c3                	mov    %eax,%ebx
    c121:	8b 45 cc             	mov    -0x34(%ebp),%eax
    c124:	89 44 24 04          	mov    %eax,0x4(%esp)
    c128:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    c12b:	89 04 24             	mov    %eax,(%esp)
    c12e:	e8 a2 73 ff ff       	call   34d5 <va2la>
    c133:	8b 55 d0             	mov    -0x30(%ebp),%edx
    c136:	89 54 24 08          	mov    %edx,0x8(%esp)
    c13a:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    c13e:	89 04 24             	mov    %eax,(%esp)
    c141:	e8 aa 3f 00 00       	call   100f0 <memcpy>
    c146:	8b 45 f0             	mov    -0x10(%ebp),%eax
    c149:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    c14c:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    c152:	81 c2 e0 0c 05 00    	add    $0x50ce0,%edx
    c158:	89 42 08             	mov    %eax,0x8(%edx)
    c15b:	8b 45 cc             	mov    -0x34(%ebp),%eax
    c15e:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    c161:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    c167:	81 c2 e0 0c 05 00    	add    $0x50ce0,%edx
    c16d:	89 42 0c             	mov    %eax,0xc(%edx)
    c170:	8b 45 d8             	mov    -0x28(%ebp),%eax
    c173:	8b 40 18             	mov    0x18(%eax),%eax
    c176:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    c179:	69 d2 36 03 00 00    	imul   $0x336,%edx,%edx
    c17f:	81 c2 f0 0c 05 00    	add    $0x50cf0,%edx
    c185:	89 42 04             	mov    %eax,0x4(%edx)
    c188:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    c18b:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    c191:	05 00 0d 05 00       	add    $0x50d00,%eax
    c196:	c7 00 00 fc 0f 00    	movl   $0xffc00,(%eax)
    c19c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    c19f:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    c1a5:	83 c0 60             	add    $0x60,%eax
    c1a8:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    c1ad:	8d 50 02             	lea    0x2(%eax),%edx
    c1b0:	8d 85 48 ff ff ff    	lea    -0xb8(%ebp),%eax
    c1b6:	89 44 24 04          	mov    %eax,0x4(%esp)
    c1ba:	89 14 24             	mov    %edx,(%esp)
    c1bd:	e8 84 3f 00 00       	call   10146 <strcpy>
    c1c2:	b8 00 00 00 00       	mov    $0x0,%eax
    c1c7:	81 c4 e0 04 00 00    	add    $0x4e0,%esp
    c1cd:	5b                   	pop    %ebx
    c1ce:	5e                   	pop    %esi
    c1cf:	5d                   	pop    %ebp
    c1d0:	c3                   	ret    
    c1d1:	90                   	nop
    c1d2:	90                   	nop
    c1d3:	90                   	nop
    c1d4:	90                   	nop
    c1d5:	90                   	nop
    c1d6:	90                   	nop
    c1d7:	90                   	nop
    c1d8:	90                   	nop
    c1d9:	90                   	nop
    c1da:	90                   	nop
    c1db:	90                   	nop
    c1dc:	90                   	nop
    c1dd:	90                   	nop
    c1de:	90                   	nop
    c1df:	90                   	nop

0000c1e0 <page_fault>:
    c1e0:	87 20                	xchg   %esp,(%eax)
    c1e2:	ff 31                	pushl  (%ecx)
    c1e4:	ff 32                	pushl  (%edx)
    c1e6:	1e                   	push   %ds
    c1e7:	06                   	push   %es
    c1e8:	0f a0                	push   %fs
    c1ea:	8b 15 10 00 00 00    	mov    0x10,%edx
    c1f0:	8e da                	mov    %edx,%ds
    c1f2:	8e c2                	mov    %edx,%es
    c1f4:	8e e2                	mov    %edx,%fs
    c1f6:	0f 20 d2             	mov    %cr2,%edx
    c1f9:	ff 32                	pushl  (%edx)
    c1fb:	ff 30                	pushl  (%eax)
    c1fd:	85 05 01 00 00 00    	test   %eax,0x1
    c203:	75 0a                	jne    c20f <page_fault.1>
    c205:	e8 23 00 00 00       	call   c22d <no_page>
    c20a:	e9 05 00 00 00       	jmp    c214 <page_fault.2>

0000c20f <page_fault.1>:
    c20f:	e8 14 00 00 00       	call   c228 <wp_page>

0000c214 <page_fault.2>:
    c214:	03 25 08 00 00 00    	add    0x8,%esp
    c21a:	0f a1                	pop    %fs
    c21c:	07                   	pop    %es
    c21d:	1f                   	pop    %ds
    c21e:	8f 02                	popl   (%edx)
    c220:	8f 01                	popl   (%ecx)
    c222:	8f 00                	popl   (%eax)
    c224:	cf                   	iret   
    c225:	90                   	nop
    c226:	90                   	nop
    c227:	90                   	nop

0000c228 <wp_page>:
    c228:	55                   	push   %ebp
    c229:	89 e5                	mov    %esp,%ebp
    c22b:	5d                   	pop    %ebp
    c22c:	c3                   	ret    

0000c22d <no_page>:
    c22d:	55                   	push   %ebp
    c22e:	89 e5                	mov    %esp,%ebp
    c230:	5d                   	pop    %ebp
    c231:	c3                   	ret    
    c232:	90                   	nop
    c233:	90                   	nop

0000c234 <do_sigaction>:
    c234:	55                   	push   %ebp
    c235:	89 e5                	mov    %esp,%ebp
    c237:	53                   	push   %ebx
    c238:	83 ec 34             	sub    $0x34,%esp
    c23b:	a1 ac ed 04 00       	mov    0x4edac,%eax
    c240:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c243:	a1 88 ed 04 00       	mov    0x4ed88,%eax
    c248:	89 45 f0             	mov    %eax,-0x10(%ebp)
    c24b:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    c24f:	7e 06                	jle    c257 <do_sigaction+0x23>
    c251:	83 7d f0 20          	cmpl   $0x20,-0x10(%ebp)
    c255:	7e 0a                	jle    c261 <do_sigaction+0x2d>
    c257:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
    c25c:	e9 25 01 00 00       	jmp    c386 <do_sigaction+0x152>
    c261:	83 7d f0 09          	cmpl   $0x9,-0x10(%ebp)
    c265:	74 06                	je     c26d <do_sigaction+0x39>
    c267:	83 7d f0 13          	cmpl   $0x13,-0x10(%ebp)
    c26b:	75 0a                	jne    c277 <do_sigaction+0x43>
    c26d:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
    c272:	e9 0f 01 00 00       	jmp    c386 <do_sigaction+0x152>
    c277:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    c27c:	8d 48 7a             	lea    0x7a(%eax),%ecx
    c27f:	8b 55 f0             	mov    -0x10(%ebp),%edx
    c282:	89 d0                	mov    %edx,%eax
    c284:	01 c0                	add    %eax,%eax
    c286:	01 d0                	add    %edx,%eax
    c288:	c1 e0 02             	shl    $0x2,%eax
    c28b:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    c28e:	89 45 ec             	mov    %eax,-0x14(%ebp)
    c291:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    c295:	74 3d                	je     c2d4 <do_sigaction+0xa0>
    c297:	8b 45 ec             	mov    -0x14(%ebp),%eax
    c29a:	89 44 24 04          	mov    %eax,0x4(%esp)
    c29e:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    c2a5:	e8 2b 72 ff ff       	call   34d5 <va2la>
    c2aa:	89 c3                	mov    %eax,%ebx
    c2ac:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    c2b1:	8b 55 f4             	mov    -0xc(%ebp),%edx
    c2b4:	89 54 24 04          	mov    %edx,0x4(%esp)
    c2b8:	89 04 24             	mov    %eax,(%esp)
    c2bb:	e8 15 72 ff ff       	call   34d5 <va2la>
    c2c0:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    c2c7:	00 
    c2c8:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    c2cc:	89 04 24             	mov    %eax,(%esp)
    c2cf:	e8 1c 3e 00 00       	call   100f0 <memcpy>
    c2d4:	a1 a8 ed 04 00       	mov    0x4eda8,%eax
    c2d9:	85 c0                	test   %eax,%eax
    c2db:	75 0a                	jne    c2e7 <do_sigaction+0xb3>
    c2dd:	b8 00 00 00 00       	mov    $0x0,%eax
    c2e2:	e9 9f 00 00 00       	jmp    c386 <do_sigaction+0x152>
    c2e7:	8b 15 a8 ed 04 00    	mov    0x4eda8,%edx
    c2ed:	a1 80 ed 04 00       	mov    0x4ed80,%eax
    c2f2:	89 54 24 04          	mov    %edx,0x4(%esp)
    c2f6:	89 04 24             	mov    %eax,(%esp)
    c2f9:	e8 d7 71 ff ff       	call   34d5 <va2la>
    c2fe:	89 c3                	mov    %eax,%ebx
    c300:	8d 45 e0             	lea    -0x20(%ebp),%eax
    c303:	89 44 24 04          	mov    %eax,0x4(%esp)
    c307:	c7 04 24 04 00 00 00 	movl   $0x4,(%esp)
    c30e:	e8 c2 71 ff ff       	call   34d5 <va2la>
    c313:	c7 44 24 08 0c 00 00 	movl   $0xc,0x8(%esp)
    c31a:	00 
    c31b:	89 5c 24 04          	mov    %ebx,0x4(%esp)
    c31f:	89 04 24             	mov    %eax,(%esp)
    c322:	e8 c9 3d 00 00       	call   100f0 <memcpy>
    c327:	8b 1d 64 ed 04 00    	mov    0x4ed64,%ebx
    c32d:	8b 4d e0             	mov    -0x20(%ebp),%ecx
    c330:	8b 55 f0             	mov    -0x10(%ebp),%edx
    c333:	89 d0                	mov    %edx,%eax
    c335:	01 c0                	add    %eax,%eax
    c337:	01 d0                	add    %edx,%eax
    c339:	c1 e0 02             	shl    $0x2,%eax
    c33c:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    c33f:	83 c0 70             	add    $0x70,%eax
    c342:	89 48 0a             	mov    %ecx,0xa(%eax)
    c345:	8b 1d 64 ed 04 00    	mov    0x4ed64,%ebx
    c34b:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
    c34e:	8b 55 f0             	mov    -0x10(%ebp),%edx
    c351:	89 d0                	mov    %edx,%eax
    c353:	01 c0                	add    %eax,%eax
    c355:	01 d0                	add    %edx,%eax
    c357:	c1 e0 02             	shl    $0x2,%eax
    c35a:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    c35d:	83 c0 70             	add    $0x70,%eax
    c360:	89 48 0e             	mov    %ecx,0xe(%eax)
    c363:	8b 1d 64 ed 04 00    	mov    0x4ed64,%ebx
    c369:	8b 4d e8             	mov    -0x18(%ebp),%ecx
    c36c:	8b 55 f0             	mov    -0x10(%ebp),%edx
    c36f:	89 d0                	mov    %edx,%eax
    c371:	01 c0                	add    %eax,%eax
    c373:	01 d0                	add    %edx,%eax
    c375:	c1 e0 02             	shl    $0x2,%eax
    c378:	8d 04 03             	lea    (%ebx,%eax,1),%eax
    c37b:	83 c0 70             	add    $0x70,%eax
    c37e:	89 48 12             	mov    %ecx,0x12(%eax)
    c381:	b8 00 00 00 00       	mov    $0x0,%eax
    c386:	83 c4 34             	add    $0x34,%esp
    c389:	5b                   	pop    %ebx
    c38a:	5d                   	pop    %ebp
    c38b:	c3                   	ret    

0000c38c <do_alarm>:
    c38c:	55                   	push   %ebp
    c38d:	89 e5                	mov    %esp,%ebp
    c38f:	83 ec 10             	sub    $0x10,%esp
    c392:	a1 88 ed 04 00       	mov    0x4ed88,%eax
    c397:	89 45 f8             	mov    %eax,-0x8(%ebp)
    c39a:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    c39f:	8b 80 fa 01 00 00    	mov    0x1fa(%eax),%eax
    c3a5:	89 45 fc             	mov    %eax,-0x4(%ebp)
    c3a8:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
    c3ac:	74 26                	je     c3d4 <do_alarm+0x48>
    c3ae:	a1 e0 01 05 00       	mov    0x501e0,%eax
    c3b3:	8b 55 fc             	mov    -0x4(%ebp),%edx
    c3b6:	89 d1                	mov    %edx,%ecx
    c3b8:	29 c1                	sub    %eax,%ecx
    c3ba:	ba 1f 85 eb 51       	mov    $0x51eb851f,%edx
    c3bf:	89 c8                	mov    %ecx,%eax
    c3c1:	f7 ea                	imul   %edx
    c3c3:	c1 fa 05             	sar    $0x5,%edx
    c3c6:	89 c8                	mov    %ecx,%eax
    c3c8:	c1 f8 1f             	sar    $0x1f,%eax
    c3cb:	89 d1                	mov    %edx,%ecx
    c3cd:	29 c1                	sub    %eax,%ecx
    c3cf:	89 c8                	mov    %ecx,%eax
    c3d1:	89 45 fc             	mov    %eax,-0x4(%ebp)
    c3d4:	8b 15 64 ed 04 00    	mov    0x4ed64,%edx
    c3da:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
    c3de:	7e 10                	jle    c3f0 <do_alarm+0x64>
    c3e0:	8b 45 f8             	mov    -0x8(%ebp),%eax
    c3e3:	6b c8 64             	imul   $0x64,%eax,%ecx
    c3e6:	a1 e0 01 05 00       	mov    0x501e0,%eax
    c3eb:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    c3ee:	eb 05                	jmp    c3f5 <do_alarm+0x69>
    c3f0:	b8 00 00 00 00       	mov    $0x0,%eax
    c3f5:	89 82 fa 01 00 00    	mov    %eax,0x1fa(%edx)
    c3fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
    c3fe:	c9                   	leave  
    c3ff:	c3                   	ret    

0000c400 <send_sig>:
    c400:	55                   	push   %ebp
    c401:	89 e5                	mov    %esp,%ebp
    c403:	56                   	push   %esi
    c404:	53                   	push   %ebx
    c405:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    c409:	74 0c                	je     c417 <send_sig+0x17>
    c40b:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
    c40f:	7e 06                	jle    c417 <send_sig+0x17>
    c411:	83 7d 08 20          	cmpl   $0x20,0x8(%ebp)
    c415:	7e 07                	jle    c41e <send_sig+0x1e>
    c417:	b8 ea ff ff ff       	mov    $0xffffffea,%eax
    c41c:	eb 26                	jmp    c444 <send_sig+0x44>
    c41e:	8b 45 0c             	mov    0xc(%ebp),%eax
    c421:	8b 40 76             	mov    0x76(%eax),%eax
    c424:	8b 55 08             	mov    0x8(%ebp),%edx
    c427:	83 ea 01             	sub    $0x1,%edx
    c42a:	bb 01 00 00 00       	mov    $0x1,%ebx
    c42f:	89 de                	mov    %ebx,%esi
    c431:	89 d1                	mov    %edx,%ecx
    c433:	d3 e6                	shl    %cl,%esi
    c435:	89 f2                	mov    %esi,%edx
    c437:	09 c2                	or     %eax,%edx
    c439:	8b 45 0c             	mov    0xc(%ebp),%eax
    c43c:	89 50 76             	mov    %edx,0x76(%eax)
    c43f:	b8 00 00 00 00       	mov    $0x0,%eax
    c444:	5b                   	pop    %ebx
    c445:	5e                   	pop    %esi
    c446:	5d                   	pop    %ebp
    c447:	c3                   	ret    

0000c448 <do_kill>:
    c448:	55                   	push   %ebp
    c449:	89 e5                	mov    %esp,%ebp
    c44b:	83 ec 18             	sub    $0x18,%esp
    c44e:	a1 88 ed 04 00       	mov    0x4ed88,%eax
    c453:	89 45 f8             	mov    %eax,-0x8(%ebp)
    c456:	a1 8c ed 04 00       	mov    0x4ed8c,%eax
    c45b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c45e:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c461:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    c467:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    c46c:	89 45 fc             	mov    %eax,-0x4(%ebp)
    c46f:	83 7d f4 ff          	cmpl   $0xffffffff,-0xc(%ebp)
    c473:	75 32                	jne    c4a7 <do_kill+0x5f>
    c475:	c7 45 fc 80 73 05 00 	movl   $0x57380,-0x4(%ebp)
    c47c:	eb 12                	jmp    c490 <do_kill+0x48>
    c47e:	8b 45 fc             	mov    -0x4(%ebp),%eax
    c481:	89 44 24 04          	mov    %eax,0x4(%esp)
    c485:	8b 45 f8             	mov    -0x8(%ebp),%eax
    c488:	89 04 24             	mov    %eax,(%esp)
    c48b:	e8 70 ff ff ff       	call   c400 <send_sig>
    c490:	81 6d fc 36 03 00 00 	subl   $0x336,-0x4(%ebp)
    c497:	81 7d fc c0 0c 05 00 	cmpl   $0x50cc0,-0x4(%ebp)
    c49e:	77 de                	ja     c47e <do_kill+0x36>
    c4a0:	b8 00 00 00 00       	mov    $0x0,%eax
    c4a5:	eb 18                	jmp    c4bf <do_kill+0x77>
    c4a7:	8b 45 fc             	mov    -0x4(%ebp),%eax
    c4aa:	89 44 24 04          	mov    %eax,0x4(%esp)
    c4ae:	8b 45 f8             	mov    -0x8(%ebp),%eax
    c4b1:	89 04 24             	mov    %eax,(%esp)
    c4b4:	e8 47 ff ff ff       	call   c400 <send_sig>
    c4b9:	89 45 f0             	mov    %eax,-0x10(%ebp)
    c4bc:	8b 45 f0             	mov    -0x10(%ebp),%eax
    c4bf:	c9                   	leave  
    c4c0:	c3                   	ret    

0000c4c1 <do_raise>:
    c4c1:	55                   	push   %ebp
    c4c2:	89 e5                	mov    %esp,%ebp
    c4c4:	83 ec 28             	sub    $0x28,%esp
    c4c7:	a1 88 ed 04 00       	mov    0x4ed88,%eax
    c4cc:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c4cf:	e8 d4 40 00 00       	call   105a8 <getpid>
    c4d4:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    c4da:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    c4df:	89 44 24 04          	mov    %eax,0x4(%esp)
    c4e3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c4e6:	89 04 24             	mov    %eax,(%esp)
    c4e9:	e8 12 ff ff ff       	call   c400 <send_sig>
    c4ee:	c9                   	leave  
    c4ef:	c3                   	ret    

0000c4f0 <task_fd>:
    c4f0:	55                   	push   %ebp
    c4f1:	89 e5                	mov    %esp,%ebp
    c4f3:	83 ec 58             	sub    $0x58,%esp
    c4f6:	e8 c3 01 00 00       	call   c6be <init_fd>
    c4fb:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c4fe:	89 44 24 08          	mov    %eax,0x8(%esp)
    c502:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    c509:	00 
    c50a:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    c511:	e8 62 3c 00 00       	call   10178 <send_recv>
    c516:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    c519:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c51c:	8b 45 c8             	mov    -0x38(%ebp),%eax
    c51f:	2d d1 07 00 00       	sub    $0x7d1,%eax
    c524:	83 f8 04             	cmp    $0x4,%eax
    c527:	77 1e                	ja     c547 <task_fd+0x57>
    c529:	8b 04 85 90 25 01 00 	mov    0x12590(,%eax,4),%eax
    c530:	ff e0                	jmp    *%eax
    c532:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c535:	89 44 24 04          	mov    %eax,0x4(%esp)
    c539:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    c540:	e8 7b 14 00 00       	call   d9c0 <add_request>
    c545:	eb 22                	jmp    c569 <task_fd+0x79>
    c547:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c54a:	89 44 24 04          	mov    %eax,0x4(%esp)
    c54e:	c7 04 24 50 25 01 00 	movl   $0x12550,(%esp)
    c555:	e8 2d 85 ff ff       	call   4a87 <dump_msg>
    c55a:	c7 04 24 6c 25 01 00 	movl   $0x1256c,(%esp)
    c561:	e8 49 3e 00 00       	call   103af <spin>
    c566:	eb 01                	jmp    c569 <task_fd+0x79>
    c568:	90                   	nop
    c569:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c56c:	89 44 24 08          	mov    %eax,0x8(%esp)
    c570:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c573:	89 44 24 04          	mov    %eax,0x4(%esp)
    c577:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    c57e:	e8 f5 3b 00 00       	call   10178 <send_recv>
    c583:	e9 73 ff ff ff       	jmp    c4fb <task_fd+0xb>

0000c588 <find_type>:
    c588:	55                   	push   %ebp
    c589:	89 e5                	mov    %esp,%ebp
    c58b:	83 ec 28             	sub    $0x28,%esp
    c58e:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    c592:	7e 46                	jle    c5da <find_type+0x52>
    c594:	83 7d 0c 04          	cmpl   $0x4,0xc(%ebp)
    c598:	7f 40                	jg     c5da <find_type+0x52>
    c59a:	8b 45 0c             	mov    0xc(%ebp),%eax
    c59d:	83 e8 01             	sub    $0x1,%eax
    c5a0:	c1 e0 03             	shl    $0x3,%eax
    c5a3:	8d 14 c5 00 00 00 00 	lea    0x0(,%eax,8),%edx
    c5aa:	89 d1                	mov    %edx,%ecx
    c5ac:	29 c1                	sub    %eax,%ecx
    c5ae:	89 c8                	mov    %ecx,%eax
    c5b0:	05 00 33 01 00       	add    $0x13300,%eax
    c5b5:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c5b8:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c5bb:	8b 40 18             	mov    0x18(%eax),%eax
    c5be:	89 44 24 08          	mov    %eax,0x8(%esp)
    c5c2:	8b 45 08             	mov    0x8(%ebp),%eax
    c5c5:	89 44 24 04          	mov    %eax,0x4(%esp)
    c5c9:	c7 04 24 a4 25 01 00 	movl   $0x125a4,(%esp)
    c5d0:	e8 b5 37 00 00       	call   fd8a <printl>
    c5d5:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c5d8:	eb 1f                	jmp    c5f9 <find_type+0x71>
    c5da:	8b 45 0c             	mov    0xc(%ebp),%eax
    c5dd:	89 44 24 08          	mov    %eax,0x8(%esp)
    c5e1:	8b 45 08             	mov    0x8(%ebp),%eax
    c5e4:	89 44 24 04          	mov    %eax,0x4(%esp)
    c5e8:	c7 04 24 af 25 01 00 	movl   $0x125af,(%esp)
    c5ef:	e8 96 37 00 00       	call   fd8a <printl>
    c5f4:	b8 00 00 00 00       	mov    $0x0,%eax
    c5f9:	c9                   	leave  
    c5fa:	c3                   	ret    

0000c5fb <fd_identify>:
    c5fb:	55                   	push   %ebp
    c5fc:	89 e5                	mov    %esp,%ebp
    c5fe:	83 ec 18             	sub    $0x18,%esp
    c601:	c7 04 24 c7 25 01 00 	movl   $0x125c7,(%esp)
    c608:	e8 7d 37 00 00       	call   fd8a <printl>
    c60d:	c7 04 24 10 00 00 00 	movl   $0x10,(%esp)
    c614:	e8 dc 00 00 00       	call   c6f5 <read_cmos>
    c619:	c1 f8 04             	sar    $0x4,%eax
    c61c:	83 e0 0f             	and    $0xf,%eax
    c61f:	89 44 24 04          	mov    %eax,0x4(%esp)
    c623:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    c62a:	e8 59 ff ff ff       	call   c588 <find_type>
    c62f:	a3 b8 93 05 00       	mov    %eax,0x593b8
    c634:	c7 04 24 14 00 00 00 	movl   $0x14,(%esp)
    c63b:	e8 b5 00 00 00       	call   c6f5 <read_cmos>
    c640:	83 e0 40             	and    $0x40,%eax
    c643:	85 c0                	test   %eax,%eax
    c645:	75 0c                	jne    c653 <fd_identify+0x58>
    c647:	c7 05 b8 93 05 00 00 	movl   $0x0,0x593b8
    c64e:	00 00 00 
    c651:	eb 30                	jmp    c683 <fd_identify+0x88>
    c653:	c7 04 24 d9 25 01 00 	movl   $0x125d9,(%esp)
    c65a:	e8 2b 37 00 00       	call   fd8a <printl>
    c65f:	c7 04 24 10 00 00 00 	movl   $0x10,(%esp)
    c666:	e8 8a 00 00 00       	call   c6f5 <read_cmos>
    c66b:	83 e0 0f             	and    $0xf,%eax
    c66e:	89 44 24 04          	mov    %eax,0x4(%esp)
    c672:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    c679:	e8 0a ff ff ff       	call   c588 <find_type>
    c67e:	a3 bc 93 05 00       	mov    %eax,0x593bc
    c683:	c7 05 c4 93 05 00 00 	movl   $0x0,0x593c4
    c68a:	00 00 00 
    c68d:	a1 c4 93 05 00       	mov    0x593c4,%eax
    c692:	a3 c0 93 05 00       	mov    %eax,0x593c0
    c697:	c7 04 24 dc 25 01 00 	movl   $0x125dc,(%esp)
    c69e:	e8 e7 36 00 00       	call   fd8a <printl>
    c6a3:	c9                   	leave  
    c6a4:	c3                   	ret    

0000c6a5 <fd_handler>:
    c6a5:	55                   	push   %ebp
    c6a6:	89 e5                	mov    %esp,%ebp
    c6a8:	83 ec 18             	sub    $0x18,%esp
    c6ab:	c7 04 24 06 00 00 00 	movl   $0x6,(%esp)
    c6b2:	e8 bc 7e ff ff       	call   4573 <inform_int>
    c6b7:	c9                   	leave  
    c6b8:	c3                   	ret    

0000c6b9 <do_fd_request>:
    c6b9:	55                   	push   %ebp
    c6ba:	89 e5                	mov    %esp,%ebp
    c6bc:	5d                   	pop    %ebp
    c6bd:	c3                   	ret    

0000c6be <init_fd>:
    c6be:	55                   	push   %ebp
    c6bf:	89 e5                	mov    %esp,%ebp
    c6c1:	83 ec 18             	sub    $0x18,%esp
    c6c4:	c7 44 24 04 a5 c6 00 	movl   $0xc6a5,0x4(%esp)
    c6cb:	00 
    c6cc:	c7 04 24 06 00 00 00 	movl   $0x6,(%esp)
    c6d3:	e8 e4 5a ff ff       	call   21bc <put_irq_handler>
    c6d8:	c7 04 24 06 00 00 00 	movl   $0x6,(%esp)
    c6df:	e8 0c 89 ff ff       	call   4ff0 <enable_irq>
    c6e4:	e8 12 ff ff ff       	call   c5fb <fd_identify>
    c6e9:	b8 b9 c6 00 00       	mov    $0xc6b9,%eax
    c6ee:	a3 d4 4a 01 00       	mov    %eax,0x14ad4
    c6f3:	c9                   	leave  
    c6f4:	c3                   	ret    

0000c6f5 <read_cmos>:
    c6f5:	55                   	push   %ebp
    c6f6:	89 e5                	mov    %esp,%ebp
    c6f8:	83 ec 28             	sub    $0x28,%esp
    c6fb:	8b 45 08             	mov    0x8(%ebp),%eax
    c6fe:	88 45 f4             	mov    %al,-0xc(%ebp)
    c701:	66 0f be 45 f4       	movsbw -0xc(%ebp),%ax
    c706:	0f b7 c0             	movzwl %ax,%eax
    c709:	c7 44 24 04 70 00 00 	movl   $0x70,0x4(%esp)
    c710:	00 
    c711:	89 04 24             	mov    %eax,(%esp)
    c714:	e8 66 88 ff ff       	call   4f7f <out_byte>
    c719:	c7 04 24 71 00 00 00 	movl   $0x71,(%esp)
    c720:	e8 66 88 ff ff       	call   4f8b <in_byte>
    c725:	0f b6 c0             	movzbl %al,%eax
    c728:	c9                   	leave  
    c729:	c3                   	ret    
    c72a:	90                   	nop
    c72b:	90                   	nop

0000c72c <task_hd>:
    c72c:	55                   	push   %ebp
    c72d:	89 e5                	mov    %esp,%ebp
    c72f:	83 ec 58             	sub    $0x58,%esp
    c732:	e8 f6 00 00 00       	call   c82d <init_hd>
    c737:	eb 04                	jmp    c73d <task_hd+0x11>
    c739:	90                   	nop
    c73a:	eb 01                	jmp    c73d <task_hd+0x11>
    c73c:	90                   	nop
    c73d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c740:	89 44 24 08          	mov    %eax,0x8(%esp)
    c744:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    c74b:	00 
    c74c:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    c753:	e8 20 3a 00 00       	call   10178 <send_recv>
    c758:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    c75b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c75e:	8b 45 c8             	mov    -0x38(%ebp),%eax
    c761:	2d d1 07 00 00       	sub    $0x7d1,%eax
    c766:	83 f8 04             	cmp    $0x4,%eax
    c769:	77 45                	ja     c7b0 <task_hd+0x84>
    c76b:	8b 04 85 1c 26 01 00 	mov    0x1261c(,%eax,4),%eax
    c772:	ff e0                	jmp    *%eax
    c774:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c777:	89 04 24             	mov    %eax,(%esp)
    c77a:	e8 b4 01 00 00       	call   c933 <hd_open>
    c77f:	eb 4f                	jmp    c7d0 <task_hd+0xa4>
    c781:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c784:	89 04 24             	mov    %eax,(%esp)
    c787:	e8 6b 02 00 00       	call   c9f7 <hd_close>
    c78c:	eb 42                	jmp    c7d0 <task_hd+0xa4>
    c78e:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c791:	89 44 24 04          	mov    %eax,0x4(%esp)
    c795:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
    c79c:	e8 1f 12 00 00       	call   d9c0 <add_request>
    c7a1:	eb 2d                	jmp    c7d0 <task_hd+0xa4>
    c7a3:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c7a6:	89 04 24             	mov    %eax,(%esp)
    c7a9:	e8 f4 05 00 00       	call   cda2 <hd_ioctl>
    c7ae:	eb 20                	jmp    c7d0 <task_hd+0xa4>
    c7b0:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c7b3:	89 44 24 04          	mov    %eax,0x4(%esp)
    c7b7:	c7 04 24 e0 25 01 00 	movl   $0x125e0,(%esp)
    c7be:	e8 c4 82 ff ff       	call   4a87 <dump_msg>
    c7c3:	c7 04 24 f8 25 01 00 	movl   $0x125f8,(%esp)
    c7ca:	e8 e0 3b 00 00       	call   103af <spin>
    c7cf:	90                   	nop
    c7d0:	8b 45 c8             	mov    -0x38(%ebp),%eax
    c7d3:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    c7d8:	0f 84 5b ff ff ff    	je     c739 <task_hd+0xd>
    c7de:	8b 45 c8             	mov    -0x38(%ebp),%eax
    c7e1:	3d d4 07 00 00       	cmp    $0x7d4,%eax
    c7e6:	0f 84 50 ff ff ff    	je     c73c <task_hd+0x10>
    c7ec:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    c7ef:	89 44 24 08          	mov    %eax,0x8(%esp)
    c7f3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c7f6:	89 44 24 04          	mov    %eax,0x4(%esp)
    c7fa:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    c801:	e8 72 39 00 00       	call   10178 <send_recv>
    c806:	e9 32 ff ff ff       	jmp    c73d <task_hd+0x11>

0000c80b <do_hd_request>:
    c80b:	55                   	push   %ebp
    c80c:	89 e5                	mov    %esp,%ebp
    c80e:	83 ec 18             	sub    $0x18,%esp
    c811:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c816:	8b 00                	mov    (%eax),%eax
    c818:	85 c0                	test   %eax,%eax
    c81a:	74 0f                	je     c82b <do_hd_request+0x20>
    c81c:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c821:	8b 00                	mov    (%eax),%eax
    c823:	89 04 24             	mov    %eax,(%esp)
    c826:	e8 61 02 00 00       	call   ca8c <hd_rdwt>
    c82b:	c9                   	leave  
    c82c:	c3                   	ret    

0000c82d <init_hd>:
    c82d:	55                   	push   %ebp
    c82e:	89 e5                	mov    %esp,%ebp
    c830:	83 ec 28             	sub    $0x28,%esp
    c833:	c7 45 f0 75 04 00 00 	movl   $0x475,-0x10(%ebp)
    c83a:	8b 45 f0             	mov    -0x10(%ebp),%eax
    c83d:	0f b6 00             	movzbl (%eax),%eax
    c840:	0f b6 c0             	movzbl %al,%eax
    c843:	89 44 24 04          	mov    %eax,0x4(%esp)
    c847:	c7 04 24 30 26 01 00 	movl   $0x12630,(%esp)
    c84e:	e8 37 35 00 00       	call   fd8a <printl>
    c853:	8b 45 f0             	mov    -0x10(%ebp),%eax
    c856:	0f b6 00             	movzbl (%eax),%eax
    c859:	84 c0                	test   %al,%al
    c85b:	75 24                	jne    c881 <init_hd+0x54>
    c85d:	c7 44 24 0c 8f 00 00 	movl   $0x8f,0xc(%esp)
    c864:	00 
    c865:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    c86c:	00 
    c86d:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    c874:	00 
    c875:	c7 04 24 45 26 01 00 	movl   $0x12645,(%esp)
    c87c:	e8 49 3b 00 00       	call   103ca <assertion_failure>
    c881:	c7 44 24 04 a0 d5 00 	movl   $0xd5a0,0x4(%esp)
    c888:	00 
    c889:	c7 04 24 0e 00 00 00 	movl   $0xe,(%esp)
    c890:	e8 27 59 ff ff       	call   21bc <put_irq_handler>
    c895:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    c89c:	e8 4f 87 ff ff       	call   4ff0 <enable_irq>
    c8a1:	c7 04 24 0e 00 00 00 	movl   $0xe,(%esp)
    c8a8:	e8 43 87 ff ff       	call   4ff0 <enable_irq>
    c8ad:	b8 0b c8 00 00       	mov    $0xc80b,%eax
    c8b2:	a3 dc 4a 01 00       	mov    %eax,0x14adc
    c8b7:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    c8be:	eb 2a                	jmp    c8ea <init_hd+0xbd>
    c8c0:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c8c3:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    c8c9:	05 80 48 01 00       	add    $0x14880,%eax
    c8ce:	c7 44 24 08 2c 02 00 	movl   $0x22c,0x8(%esp)
    c8d5:	00 
    c8d6:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    c8dd:	00 
    c8de:	89 04 24             	mov    %eax,(%esp)
    c8e1:	e8 39 38 00 00       	call   1011f <memset>
    c8e6:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    c8ea:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    c8ee:	74 d0                	je     c8c0 <init_hd+0x93>
    c8f0:	c7 05 80 48 01 00 00 	movl   $0x0,0x14880
    c8f7:	00 00 00 
    c8fa:	c9                   	leave  
    c8fb:	c3                   	ret    

0000c8fc <end_request>:
    c8fc:	55                   	push   %ebp
    c8fd:	89 e5                	mov    %esp,%ebp
    c8ff:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c904:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
    c90a:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c90f:	8b 40 08             	mov    0x8(%eax),%eax
    c912:	8b 00                	mov    (%eax),%eax
    c914:	85 c0                	test   %eax,%eax
    c916:	74 19                	je     c931 <end_request+0x35>
    c918:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c91d:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
    c924:	a1 d8 4a 01 00       	mov    0x14ad8,%eax
    c929:	8b 40 08             	mov    0x8(%eax),%eax
    c92c:	a3 d8 4a 01 00       	mov    %eax,0x14ad8
    c931:	5d                   	pop    %ebp
    c932:	c3                   	ret    

0000c933 <hd_open>:
    c933:	55                   	push   %ebp
    c934:	89 e5                	mov    %esp,%ebp
    c936:	83 ec 28             	sub    $0x28,%esp
    c939:	8b 45 08             	mov    0x8(%ebp),%eax
    c93c:	8b 40 14             	mov    0x14(%eax),%eax
    c93f:	83 f8 09             	cmp    $0x9,%eax
    c942:	7f 1e                	jg     c962 <hd_open+0x2f>
    c944:	8b 45 08             	mov    0x8(%ebp),%eax
    c947:	8b 48 14             	mov    0x14(%eax),%ecx
    c94a:	ba 67 66 66 66       	mov    $0x66666667,%edx
    c94f:	89 c8                	mov    %ecx,%eax
    c951:	f7 ea                	imul   %edx
    c953:	d1 fa                	sar    %edx
    c955:	89 c8                	mov    %ecx,%eax
    c957:	c1 f8 1f             	sar    $0x1f,%eax
    c95a:	89 d1                	mov    %edx,%ecx
    c95c:	29 c1                	sub    %eax,%ecx
    c95e:	89 c8                	mov    %ecx,%eax
    c960:	eb 14                	jmp    c976 <hd_open+0x43>
    c962:	8b 45 08             	mov    0x8(%ebp),%eax
    c965:	8b 40 14             	mov    0x14(%eax),%eax
    c968:	83 e8 10             	sub    $0x10,%eax
    c96b:	8d 50 3f             	lea    0x3f(%eax),%edx
    c96e:	85 c0                	test   %eax,%eax
    c970:	0f 48 c2             	cmovs  %edx,%eax
    c973:	c1 f8 06             	sar    $0x6,%eax
    c976:	89 45 f4             	mov    %eax,-0xc(%ebp)
    c979:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    c97d:	74 24                	je     c9a3 <hd_open+0x70>
    c97f:	c7 44 24 0c b9 00 00 	movl   $0xb9,0xc(%esp)
    c986:	00 
    c987:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    c98e:	00 
    c98f:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    c996:	00 
    c997:	c7 04 24 50 26 01 00 	movl   $0x12650,(%esp)
    c99e:	e8 27 3a 00 00       	call   103ca <assertion_failure>
    c9a3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c9a6:	89 04 24             	mov    %eax,(%esp)
    c9a9:	e8 ef 07 00 00       	call   d19d <hd_identify>
    c9ae:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c9b1:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    c9b7:	8d 88 80 48 01 00    	lea    0x14880(%eax),%ecx
    c9bd:	8b 45 f4             	mov    -0xc(%ebp),%eax
    c9c0:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    c9c6:	05 80 48 01 00       	add    $0x14880,%eax
    c9cb:	8b 00                	mov    (%eax),%eax
    c9cd:	85 c0                	test   %eax,%eax
    c9cf:	0f 94 c2             	sete   %dl
    c9d2:	83 c0 01             	add    $0x1,%eax
    c9d5:	89 01                	mov    %eax,(%ecx)
    c9d7:	84 d2                	test   %dl,%dl
    c9d9:	74 1a                	je     c9f5 <hd_open+0xc2>
    c9db:	8b 55 f4             	mov    -0xc(%ebp),%edx
    c9de:	89 d0                	mov    %edx,%eax
    c9e0:	c1 e0 02             	shl    $0x2,%eax
    c9e3:	01 d0                	add    %edx,%eax
    c9e5:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    c9ec:	00 
    c9ed:	89 04 24             	mov    %eax,(%esp)
    c9f0:	e8 50 05 00 00       	call   cf45 <partition>
    c9f5:	c9                   	leave  
    c9f6:	c3                   	ret    

0000c9f7 <hd_close>:
    c9f7:	55                   	push   %ebp
    c9f8:	89 e5                	mov    %esp,%ebp
    c9fa:	83 ec 28             	sub    $0x28,%esp
    c9fd:	8b 45 08             	mov    0x8(%ebp),%eax
    ca00:	8b 40 14             	mov    0x14(%eax),%eax
    ca03:	83 f8 09             	cmp    $0x9,%eax
    ca06:	7f 1e                	jg     ca26 <hd_close+0x2f>
    ca08:	8b 45 08             	mov    0x8(%ebp),%eax
    ca0b:	8b 48 14             	mov    0x14(%eax),%ecx
    ca0e:	ba 67 66 66 66       	mov    $0x66666667,%edx
    ca13:	89 c8                	mov    %ecx,%eax
    ca15:	f7 ea                	imul   %edx
    ca17:	d1 fa                	sar    %edx
    ca19:	89 c8                	mov    %ecx,%eax
    ca1b:	c1 f8 1f             	sar    $0x1f,%eax
    ca1e:	89 d1                	mov    %edx,%ecx
    ca20:	29 c1                	sub    %eax,%ecx
    ca22:	89 c8                	mov    %ecx,%eax
    ca24:	eb 14                	jmp    ca3a <hd_close+0x43>
    ca26:	8b 45 08             	mov    0x8(%ebp),%eax
    ca29:	8b 40 14             	mov    0x14(%eax),%eax
    ca2c:	83 e8 10             	sub    $0x10,%eax
    ca2f:	8d 50 3f             	lea    0x3f(%eax),%edx
    ca32:	85 c0                	test   %eax,%eax
    ca34:	0f 48 c2             	cmovs  %edx,%eax
    ca37:	c1 f8 06             	sar    $0x6,%eax
    ca3a:	89 45 f4             	mov    %eax,-0xc(%ebp)
    ca3d:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    ca41:	74 24                	je     ca67 <hd_close+0x70>
    ca43:	c7 44 24 0c ce 00 00 	movl   $0xce,0xc(%esp)
    ca4a:	00 
    ca4b:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    ca52:	00 
    ca53:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    ca5a:	00 
    ca5b:	c7 04 24 50 26 01 00 	movl   $0x12650,(%esp)
    ca62:	e8 63 39 00 00       	call   103ca <assertion_failure>
    ca67:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ca6a:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    ca70:	05 80 48 01 00       	add    $0x14880,%eax
    ca75:	8b 00                	mov    (%eax),%eax
    ca77:	8d 50 ff             	lea    -0x1(%eax),%edx
    ca7a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ca7d:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    ca83:	05 80 48 01 00       	add    $0x14880,%eax
    ca88:	89 10                	mov    %edx,(%eax)
    ca8a:	c9                   	leave  
    ca8b:	c3                   	ret    

0000ca8c <hd_rdwt>:
    ca8c:	55                   	push   %ebp
    ca8d:	89 e5                	mov    %esp,%ebp
    ca8f:	56                   	push   %esi
    ca90:	53                   	push   %ebx
    ca91:	83 ec 40             	sub    $0x40,%esp
    ca94:	8b 45 08             	mov    0x8(%ebp),%eax
    ca97:	8b 40 14             	mov    0x14(%eax),%eax
    ca9a:	83 f8 09             	cmp    $0x9,%eax
    ca9d:	7f 1e                	jg     cabd <hd_rdwt+0x31>
    ca9f:	8b 45 08             	mov    0x8(%ebp),%eax
    caa2:	8b 48 14             	mov    0x14(%eax),%ecx
    caa5:	ba 67 66 66 66       	mov    $0x66666667,%edx
    caaa:	89 c8                	mov    %ecx,%eax
    caac:	f7 ea                	imul   %edx
    caae:	d1 fa                	sar    %edx
    cab0:	89 c8                	mov    %ecx,%eax
    cab2:	c1 f8 1f             	sar    $0x1f,%eax
    cab5:	89 d1                	mov    %edx,%ecx
    cab7:	29 c1                	sub    %eax,%ecx
    cab9:	89 c8                	mov    %ecx,%eax
    cabb:	eb 14                	jmp    cad1 <hd_rdwt+0x45>
    cabd:	8b 45 08             	mov    0x8(%ebp),%eax
    cac0:	8b 40 14             	mov    0x14(%eax),%eax
    cac3:	83 e8 10             	sub    $0x10,%eax
    cac6:	8d 50 3f             	lea    0x3f(%eax),%edx
    cac9:	85 c0                	test   %eax,%eax
    cacb:	0f 48 c2             	cmovs  %edx,%eax
    cace:	c1 f8 06             	sar    $0x6,%eax
    cad1:	89 45 ec             	mov    %eax,-0x14(%ebp)
    cad4:	8b 45 08             	mov    0x8(%ebp),%eax
    cad7:	8b 50 1c             	mov    0x1c(%eax),%edx
    cada:	8b 40 18             	mov    0x18(%eax),%eax
    cadd:	89 45 e0             	mov    %eax,-0x20(%ebp)
    cae0:	89 55 e4             	mov    %edx,-0x1c(%ebp)
    cae3:	8b 45 e0             	mov    -0x20(%ebp),%eax
    cae6:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    cae9:	0f ac d0 09          	shrd   $0x9,%edx,%eax
    caed:	c1 ea 09             	shr    $0x9,%edx
    caf0:	83 fa ff             	cmp    $0xffffffff,%edx
    caf3:	72 30                	jb     cb25 <hd_rdwt+0x99>
    caf5:	83 fa ff             	cmp    $0xffffffff,%edx
    caf8:	77 07                	ja     cb01 <hd_rdwt+0x75>
    cafa:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
    caff:	76 24                	jbe    cb25 <hd_rdwt+0x99>
    cb01:	c7 44 24 0c e0 00 00 	movl   $0xe0,0xc(%esp)
    cb08:	00 
    cb09:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    cb10:	00 
    cb11:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    cb18:	00 
    cb19:	c7 04 24 5c 26 01 00 	movl   $0x1265c,(%esp)
    cb20:	e8 a5 38 00 00       	call   103ca <assertion_failure>
    cb25:	8b 45 e0             	mov    -0x20(%ebp),%eax
    cb28:	89 c3                	mov    %eax,%ebx
    cb2a:	81 e3 ff 01 00 00    	and    $0x1ff,%ebx
    cb30:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    cb33:	89 c6                	mov    %eax,%esi
    cb35:	83 e6 00             	and    $0x0,%esi
    cb38:	89 f0                	mov    %esi,%eax
    cb3a:	09 d8                	or     %ebx,%eax
    cb3c:	85 c0                	test   %eax,%eax
    cb3e:	74 24                	je     cb64 <hd_rdwt+0xd8>
    cb40:	c7 44 24 0c e5 00 00 	movl   $0xe5,0xc(%esp)
    cb47:	00 
    cb48:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    cb4f:	00 
    cb50:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    cb57:	00 
    cb58:	c7 04 24 83 26 01 00 	movl   $0x12683,(%esp)
    cb5f:	e8 66 38 00 00       	call   103ca <assertion_failure>
    cb64:	8b 45 e0             	mov    -0x20(%ebp),%eax
    cb67:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    cb6a:	0f ac d0 09          	shrd   $0x9,%edx,%eax
    cb6e:	c1 ea 09             	shr    $0x9,%edx
    cb71:	89 45 dc             	mov    %eax,-0x24(%ebp)
    cb74:	8b 45 08             	mov    0x8(%ebp),%eax
    cb77:	8b 40 14             	mov    0x14(%eax),%eax
    cb7a:	8d 50 f0             	lea    -0x10(%eax),%edx
    cb7d:	89 d0                	mov    %edx,%eax
    cb7f:	c1 f8 1f             	sar    $0x1f,%eax
    cb82:	c1 e8 1a             	shr    $0x1a,%eax
    cb85:	01 c2                	add    %eax,%edx
    cb87:	83 e2 3f             	and    $0x3f,%edx
    cb8a:	89 d1                	mov    %edx,%ecx
    cb8c:	29 c1                	sub    %eax,%ecx
    cb8e:	89 c8                	mov    %ecx,%eax
    cb90:	89 45 d8             	mov    %eax,-0x28(%ebp)
    cb93:	8b 45 08             	mov    0x8(%ebp),%eax
    cb96:	8b 40 14             	mov    0x14(%eax),%eax
    cb99:	83 f8 08             	cmp    $0x8,%eax
    cb9c:	7f 1f                	jg     cbbd <hd_rdwt+0x131>
    cb9e:	8b 45 08             	mov    0x8(%ebp),%eax
    cba1:	8b 50 14             	mov    0x14(%eax),%edx
    cba4:	8b 45 ec             	mov    -0x14(%ebp),%eax
    cba7:	c1 e2 03             	shl    $0x3,%edx
    cbaa:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    cbb0:	8d 04 02             	lea    (%edx,%eax,1),%eax
    cbb3:	05 80 48 01 00       	add    $0x14880,%eax
    cbb8:	8b 40 04             	mov    0x4(%eax),%eax
    cbbb:	eb 1d                	jmp    cbda <hd_rdwt+0x14e>
    cbbd:	8b 45 d8             	mov    -0x28(%ebp),%eax
    cbc0:	8d 50 04             	lea    0x4(%eax),%edx
    cbc3:	8b 45 ec             	mov    -0x14(%ebp),%eax
    cbc6:	c1 e2 03             	shl    $0x3,%edx
    cbc9:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    cbcf:	8d 04 02             	lea    (%edx,%eax,1),%eax
    cbd2:	05 80 48 01 00       	add    $0x14880,%eax
    cbd7:	8b 40 0c             	mov    0xc(%eax),%eax
    cbda:	01 45 dc             	add    %eax,-0x24(%ebp)
    cbdd:	c6 45 c9 00          	movb   $0x0,-0x37(%ebp)
    cbe1:	8b 45 08             	mov    0x8(%ebp),%eax
    cbe4:	8b 40 0c             	mov    0xc(%eax),%eax
    cbe7:	05 ff 01 00 00       	add    $0x1ff,%eax
    cbec:	8d 90 ff 01 00 00    	lea    0x1ff(%eax),%edx
    cbf2:	85 c0                	test   %eax,%eax
    cbf4:	0f 48 c2             	cmovs  %edx,%eax
    cbf7:	c1 f8 09             	sar    $0x9,%eax
    cbfa:	88 45 ca             	mov    %al,-0x36(%ebp)
    cbfd:	8b 45 dc             	mov    -0x24(%ebp),%eax
    cc00:	88 45 cb             	mov    %al,-0x35(%ebp)
    cc03:	8b 45 dc             	mov    -0x24(%ebp),%eax
    cc06:	c1 e8 08             	shr    $0x8,%eax
    cc09:	88 45 cc             	mov    %al,-0x34(%ebp)
    cc0c:	8b 45 dc             	mov    -0x24(%ebp),%eax
    cc0f:	c1 e8 10             	shr    $0x10,%eax
    cc12:	88 45 cd             	mov    %al,-0x33(%ebp)
    cc15:	8b 45 ec             	mov    -0x14(%ebp),%eax
    cc18:	89 c2                	mov    %eax,%edx
    cc1a:	c1 e2 04             	shl    $0x4,%edx
    cc1d:	8b 45 dc             	mov    -0x24(%ebp),%eax
    cc20:	c1 e8 18             	shr    $0x18,%eax
    cc23:	83 e0 0f             	and    $0xf,%eax
    cc26:	09 d0                	or     %edx,%eax
    cc28:	83 c8 e0             	or     $0xffffffe0,%eax
    cc2b:	88 45 ce             	mov    %al,-0x32(%ebp)
    cc2e:	8b 45 08             	mov    0x8(%ebp),%eax
    cc31:	8b 40 04             	mov    0x4(%eax),%eax
    cc34:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    cc39:	75 07                	jne    cc42 <hd_rdwt+0x1b6>
    cc3b:	b8 20 00 00 00       	mov    $0x20,%eax
    cc40:	eb 05                	jmp    cc47 <hd_rdwt+0x1bb>
    cc42:	b8 30 00 00 00       	mov    $0x30,%eax
    cc47:	88 45 cf             	mov    %al,-0x31(%ebp)
    cc4a:	8d 45 c9             	lea    -0x37(%ebp),%eax
    cc4d:	89 04 24             	mov    %eax,(%esp)
    cc50:	e8 cc 07 00 00       	call   d421 <hd_cmd_out>
    cc55:	8b 45 08             	mov    0x8(%ebp),%eax
    cc58:	8b 40 0c             	mov    0xc(%eax),%eax
    cc5b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    cc5e:	8b 45 08             	mov    0x8(%ebp),%eax
    cc61:	8b 50 2c             	mov    0x2c(%eax),%edx
    cc64:	8b 45 08             	mov    0x8(%ebp),%eax
    cc67:	8b 40 10             	mov    0x10(%eax),%eax
    cc6a:	89 54 24 04          	mov    %edx,0x4(%esp)
    cc6e:	89 04 24             	mov    %eax,(%esp)
    cc71:	e8 5f 68 ff ff       	call   34d5 <va2la>
    cc76:	89 45 f0             	mov    %eax,-0x10(%ebp)
    cc79:	e9 ec 00 00 00       	jmp    cd6a <hd_rdwt+0x2de>
    cc7e:	b8 00 02 00 00       	mov    $0x200,%eax
    cc83:	81 7d f4 00 02 00 00 	cmpl   $0x200,-0xc(%ebp)
    cc8a:	0f 4e 45 f4          	cmovle -0xc(%ebp),%eax
    cc8e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    cc91:	8b 45 08             	mov    0x8(%ebp),%eax
    cc94:	8b 40 04             	mov    0x4(%eax),%eax
    cc97:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    cc9c:	75 73                	jne    cd11 <hd_rdwt+0x285>
    cc9e:	e8 7b 08 00 00       	call   d51e <interrupt_wait>
    cca3:	8b 45 08             	mov    0x8(%ebp),%eax
    cca6:	8b 48 14             	mov    0x14(%eax),%ecx
    cca9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ccac:	89 44 24 0c          	mov    %eax,0xc(%esp)
    ccb0:	8b 45 e0             	mov    -0x20(%ebp),%eax
    ccb3:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    ccb6:	89 44 24 04          	mov    %eax,0x4(%esp)
    ccba:	89 54 24 08          	mov    %edx,0x8(%esp)
    ccbe:	89 0c 24             	mov    %ecx,(%esp)
    ccc1:	e8 13 df ff ff       	call   abd9 <find_buffer>
    ccc6:	89 45 d0             	mov    %eax,-0x30(%ebp)
    ccc9:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    ccd0:	00 
    ccd1:	c7 44 24 04 80 44 01 	movl   $0x14480,0x4(%esp)
    ccd8:	00 
    ccd9:	c7 04 24 f0 01 00 00 	movl   $0x1f0,(%esp)
    cce0:	e8 b0 82 ff ff       	call   4f95 <port_read>
    cce5:	c7 44 24 04 80 44 01 	movl   $0x14480,0x4(%esp)
    ccec:	00 
    cced:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    ccf4:	e8 dc 67 ff ff       	call   34d5 <va2la>
    ccf9:	8b 55 d4             	mov    -0x2c(%ebp),%edx
    ccfc:	89 54 24 08          	mov    %edx,0x8(%esp)
    cd00:	89 44 24 04          	mov    %eax,0x4(%esp)
    cd04:	8b 45 f0             	mov    -0x10(%ebp),%eax
    cd07:	89 04 24             	mov    %eax,(%esp)
    cd0a:	e8 e1 33 00 00       	call   100f0 <memcpy>
    cd0f:	eb 4b                	jmp    cd5c <hd_rdwt+0x2d0>
    cd11:	c7 44 24 08 10 27 00 	movl   $0x2710,0x8(%esp)
    cd18:	00 
    cd19:	c7 44 24 04 08 00 00 	movl   $0x8,0x4(%esp)
    cd20:	00 
    cd21:	c7 04 24 08 00 00 00 	movl   $0x8,(%esp)
    cd28:	e8 14 08 00 00       	call   d541 <waitfor>
    cd2d:	85 c0                	test   %eax,%eax
    cd2f:	75 0c                	jne    cd3d <hd_rdwt+0x2b1>
    cd31:	c7 04 24 96 26 01 00 	movl   $0x12696,(%esp)
    cd38:	e8 fa 51 ff ff       	call   1f37 <panic>
    cd3d:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    cd40:	89 44 24 08          	mov    %eax,0x8(%esp)
    cd44:	8b 45 f0             	mov    -0x10(%ebp),%eax
    cd47:	89 44 24 04          	mov    %eax,0x4(%esp)
    cd4b:	c7 04 24 f0 01 00 00 	movl   $0x1f0,(%esp)
    cd52:	e8 51 82 ff ff       	call   4fa8 <port_write>
    cd57:	e8 c2 07 00 00       	call   d51e <interrupt_wait>
    cd5c:	81 6d f4 00 02 00 00 	subl   $0x200,-0xc(%ebp)
    cd63:	81 45 f0 00 02 00 00 	addl   $0x200,-0x10(%ebp)
    cd6a:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    cd6e:	0f 85 0a ff ff ff    	jne    cc7e <hd_rdwt+0x1f2>
    cd74:	8b 45 08             	mov    0x8(%ebp),%eax
    cd77:	8b 40 10             	mov    0x10(%eax),%eax
    cd7a:	8b 55 08             	mov    0x8(%ebp),%edx
    cd7d:	89 54 24 08          	mov    %edx,0x8(%esp)
    cd81:	89 44 24 04          	mov    %eax,0x4(%esp)
    cd85:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    cd8c:	e8 e7 33 00 00       	call   10178 <send_recv>
    cd91:	e8 66 fb ff ff       	call   c8fc <end_request>
    cd96:	e8 70 fa ff ff       	call   c80b <do_hd_request>
    cd9b:	83 c4 40             	add    $0x40,%esp
    cd9e:	5b                   	pop    %ebx
    cd9f:	5e                   	pop    %esi
    cda0:	5d                   	pop    %ebp
    cda1:	c3                   	ret    

0000cda2 <hd_ioctl>:
    cda2:	55                   	push   %ebp
    cda3:	89 e5                	mov    %esp,%ebp
    cda5:	53                   	push   %ebx
    cda6:	83 ec 34             	sub    $0x34,%esp
    cda9:	8b 45 08             	mov    0x8(%ebp),%eax
    cdac:	8b 40 14             	mov    0x14(%eax),%eax
    cdaf:	89 45 f4             	mov    %eax,-0xc(%ebp)
    cdb2:	83 7d f4 09          	cmpl   $0x9,-0xc(%ebp)
    cdb6:	7f 1b                	jg     cdd3 <hd_ioctl+0x31>
    cdb8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
    cdbb:	ba 67 66 66 66       	mov    $0x66666667,%edx
    cdc0:	89 c8                	mov    %ecx,%eax
    cdc2:	f7 ea                	imul   %edx
    cdc4:	d1 fa                	sar    %edx
    cdc6:	89 c8                	mov    %ecx,%eax
    cdc8:	c1 f8 1f             	sar    $0x1f,%eax
    cdcb:	89 d1                	mov    %edx,%ecx
    cdcd:	29 c1                	sub    %eax,%ecx
    cdcf:	89 c8                	mov    %ecx,%eax
    cdd1:	eb 11                	jmp    cde4 <hd_ioctl+0x42>
    cdd3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    cdd6:	83 e8 10             	sub    $0x10,%eax
    cdd9:	8d 50 3f             	lea    0x3f(%eax),%edx
    cddc:	85 c0                	test   %eax,%eax
    cdde:	0f 48 c2             	cmovs  %edx,%eax
    cde1:	c1 f8 06             	sar    $0x6,%eax
    cde4:	89 45 f0             	mov    %eax,-0x10(%ebp)
    cde7:	8b 45 f0             	mov    -0x10(%ebp),%eax
    cdea:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    cdf0:	05 80 48 01 00       	add    $0x14880,%eax
    cdf5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    cdf8:	8b 45 08             	mov    0x8(%ebp),%eax
    cdfb:	8b 40 0c             	mov    0xc(%eax),%eax
    cdfe:	83 f8 01             	cmp    $0x1,%eax
    ce01:	0f 85 86 00 00 00    	jne    ce8d <hd_ioctl+0xeb>
    ce07:	8b 45 08             	mov    0x8(%ebp),%eax
    ce0a:	8b 50 2c             	mov    0x2c(%eax),%edx
    ce0d:	8b 45 08             	mov    0x8(%ebp),%eax
    ce10:	8b 40 10             	mov    0x10(%eax),%eax
    ce13:	89 54 24 04          	mov    %edx,0x4(%esp)
    ce17:	89 04 24             	mov    %eax,(%esp)
    ce1a:	e8 b6 66 ff ff       	call   34d5 <va2la>
    ce1f:	89 45 e8             	mov    %eax,-0x18(%ebp)
    ce22:	83 7d f4 08          	cmpl   $0x8,-0xc(%ebp)
    ce26:	7f 11                	jg     ce39 <hd_ioctl+0x97>
    ce28:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ce2b:	8d 50 04             	lea    0x4(%eax),%edx
    ce2e:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ce31:	c1 e0 03             	shl    $0x3,%eax
    ce34:	8d 04 02             	lea    (%edx,%eax,1),%eax
    ce37:	eb 25                	jmp    ce5e <hd_ioctl+0xbc>
    ce39:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ce3c:	8d 48 2c             	lea    0x2c(%eax),%ecx
    ce3f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ce42:	8d 50 f0             	lea    -0x10(%eax),%edx
    ce45:	89 d0                	mov    %edx,%eax
    ce47:	c1 f8 1f             	sar    $0x1f,%eax
    ce4a:	c1 e8 1a             	shr    $0x1a,%eax
    ce4d:	01 c2                	add    %eax,%edx
    ce4f:	83 e2 3f             	and    $0x3f,%edx
    ce52:	89 d3                	mov    %edx,%ebx
    ce54:	29 c3                	sub    %eax,%ebx
    ce56:	89 d8                	mov    %ebx,%eax
    ce58:	c1 e0 03             	shl    $0x3,%eax
    ce5b:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    ce5e:	89 44 24 04          	mov    %eax,0x4(%esp)
    ce62:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    ce69:	e8 67 66 ff ff       	call   34d5 <va2la>
    ce6e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    ce71:	c7 44 24 08 08 00 00 	movl   $0x8,0x8(%esp)
    ce78:	00 
    ce79:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    ce7c:	89 44 24 04          	mov    %eax,0x4(%esp)
    ce80:	8b 45 e8             	mov    -0x18(%ebp),%eax
    ce83:	89 04 24             	mov    %eax,(%esp)
    ce86:	e8 65 32 00 00       	call   100f0 <memcpy>
    ce8b:	eb 24                	jmp    ceb1 <hd_ioctl+0x10f>
    ce8d:	c7 44 24 0c 36 01 00 	movl   $0x136,0xc(%esp)
    ce94:	00 
    ce95:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    ce9c:	00 
    ce9d:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    cea4:	00 
    cea5:	c7 04 24 a8 26 01 00 	movl   $0x126a8,(%esp)
    ceac:	e8 19 35 00 00       	call   103ca <assertion_failure>
    ceb1:	83 c4 34             	add    $0x34,%esp
    ceb4:	5b                   	pop    %ebx
    ceb5:	5d                   	pop    %ebp
    ceb6:	c3                   	ret    

0000ceb7 <get_part_table>:
    ceb7:	55                   	push   %ebp
    ceb8:	89 e5                	mov    %esp,%ebp
    ceba:	83 ec 28             	sub    $0x28,%esp
    cebd:	c6 45 f1 00          	movb   $0x0,-0xf(%ebp)
    cec1:	c6 45 f2 01          	movb   $0x1,-0xe(%ebp)
    cec5:	8b 45 0c             	mov    0xc(%ebp),%eax
    cec8:	88 45 f3             	mov    %al,-0xd(%ebp)
    cecb:	8b 45 0c             	mov    0xc(%ebp),%eax
    cece:	c1 f8 08             	sar    $0x8,%eax
    ced1:	88 45 f4             	mov    %al,-0xc(%ebp)
    ced4:	8b 45 0c             	mov    0xc(%ebp),%eax
    ced7:	c1 f8 10             	sar    $0x10,%eax
    ceda:	88 45 f5             	mov    %al,-0xb(%ebp)
    cedd:	8b 45 08             	mov    0x8(%ebp),%eax
    cee0:	c1 e0 04             	shl    $0x4,%eax
    cee3:	83 c8 40             	or     $0x40,%eax
    cee6:	8b 55 0c             	mov    0xc(%ebp),%edx
    cee9:	c1 fa 18             	sar    $0x18,%edx
    ceec:	83 e2 0f             	and    $0xf,%edx
    ceef:	09 d0                	or     %edx,%eax
    cef1:	83 c8 a0             	or     $0xffffffa0,%eax
    cef4:	88 45 f6             	mov    %al,-0xa(%ebp)
    cef7:	c6 45 f7 20          	movb   $0x20,-0x9(%ebp)
    cefb:	8d 45 f1             	lea    -0xf(%ebp),%eax
    cefe:	89 04 24             	mov    %eax,(%esp)
    cf01:	e8 1b 05 00 00       	call   d421 <hd_cmd_out>
    cf06:	e8 13 06 00 00       	call   d51e <interrupt_wait>
    cf0b:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    cf12:	00 
    cf13:	c7 44 24 04 80 44 01 	movl   $0x14480,0x4(%esp)
    cf1a:	00 
    cf1b:	c7 04 24 f0 01 00 00 	movl   $0x1f0,(%esp)
    cf22:	e8 6e 80 ff ff       	call   4f95 <port_read>
    cf27:	b8 3e 46 01 00       	mov    $0x1463e,%eax
    cf2c:	c7 44 24 08 40 00 00 	movl   $0x40,0x8(%esp)
    cf33:	00 
    cf34:	89 44 24 04          	mov    %eax,0x4(%esp)
    cf38:	8b 45 10             	mov    0x10(%ebp),%eax
    cf3b:	89 04 24             	mov    %eax,(%esp)
    cf3e:	e8 ad 31 00 00       	call   100f0 <memcpy>
    cf43:	c9                   	leave  
    cf44:	c3                   	ret    

0000cf45 <partition>:
    cf45:	55                   	push   %ebp
    cf46:	89 e5                	mov    %esp,%ebp
    cf48:	81 ec 48 04 00 00    	sub    $0x448,%esp
    cf4e:	83 7d 08 09          	cmpl   $0x9,0x8(%ebp)
    cf52:	7f 1b                	jg     cf6f <partition+0x2a>
    cf54:	8b 4d 08             	mov    0x8(%ebp),%ecx
    cf57:	ba 67 66 66 66       	mov    $0x66666667,%edx
    cf5c:	89 c8                	mov    %ecx,%eax
    cf5e:	f7 ea                	imul   %edx
    cf60:	d1 fa                	sar    %edx
    cf62:	89 c8                	mov    %ecx,%eax
    cf64:	c1 f8 1f             	sar    $0x1f,%eax
    cf67:	89 d1                	mov    %edx,%ecx
    cf69:	29 c1                	sub    %eax,%ecx
    cf6b:	89 c8                	mov    %ecx,%eax
    cf6d:	eb 11                	jmp    cf80 <partition+0x3b>
    cf6f:	8b 45 08             	mov    0x8(%ebp),%eax
    cf72:	83 e8 10             	sub    $0x10,%eax
    cf75:	8d 50 3f             	lea    0x3f(%eax),%edx
    cf78:	85 c0                	test   %eax,%eax
    cf7a:	0f 48 c2             	cmovs  %edx,%eax
    cf7d:	c1 f8 06             	sar    $0x6,%eax
    cf80:	89 45 e8             	mov    %eax,-0x18(%ebp)
    cf83:	8b 45 e8             	mov    -0x18(%ebp),%eax
    cf86:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    cf8c:	05 80 48 01 00       	add    $0x14880,%eax
    cf91:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    cf94:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    cf98:	0f 85 05 01 00 00    	jne    d0a3 <partition+0x15e>
    cf9e:	8d 85 d0 fb ff ff    	lea    -0x430(%ebp),%eax
    cfa4:	89 44 24 08          	mov    %eax,0x8(%esp)
    cfa8:	8b 45 e8             	mov    -0x18(%ebp),%eax
    cfab:	89 44 24 04          	mov    %eax,0x4(%esp)
    cfaf:	8b 45 e8             	mov    -0x18(%ebp),%eax
    cfb2:	89 04 24             	mov    %eax,(%esp)
    cfb5:	e8 fd fe ff ff       	call   ceb7 <get_part_table>
    cfba:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    cfc1:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    cfc8:	e9 99 00 00 00       	jmp    d066 <partition+0x121>
    cfcd:	8b 45 f4             	mov    -0xc(%ebp),%eax
    cfd0:	c1 e0 04             	shl    $0x4,%eax
    cfd3:	8d 55 f8             	lea    -0x8(%ebp),%edx
    cfd6:	8d 04 02             	lea    (%edx,%eax,1),%eax
    cfd9:	2d 28 04 00 00       	sub    $0x428,%eax
    cfde:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    cfe2:	84 c0                	test   %al,%al
    cfe4:	74 7b                	je     d061 <partition+0x11c>
    cfe6:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    cfea:	8b 45 f4             	mov    -0xc(%ebp),%eax
    cfed:	83 c0 01             	add    $0x1,%eax
    cff0:	89 45 e0             	mov    %eax,-0x20(%ebp)
    cff3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    cff6:	c1 e0 04             	shl    $0x4,%eax
    cff9:	8d 4d f8             	lea    -0x8(%ebp),%ecx
    cffc:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    cfff:	2d 20 04 00 00       	sub    $0x420,%eax
    d004:	8b 08                	mov    (%eax),%ecx
    d006:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d009:	8b 55 e0             	mov    -0x20(%ebp),%edx
    d00c:	89 4c d0 04          	mov    %ecx,0x4(%eax,%edx,8)
    d010:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d013:	c1 e0 04             	shl    $0x4,%eax
    d016:	8d 55 f8             	lea    -0x8(%ebp),%edx
    d019:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d01c:	2d 1c 04 00 00       	sub    $0x41c,%eax
    d021:	8b 08                	mov    (%eax),%ecx
    d023:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d026:	8b 55 e0             	mov    -0x20(%ebp),%edx
    d029:	89 4c d0 08          	mov    %ecx,0x8(%eax,%edx,8)
    d02d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d030:	c1 e0 04             	shl    $0x4,%eax
    d033:	8d 4d f8             	lea    -0x8(%ebp),%ecx
    d036:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    d039:	2d 28 04 00 00       	sub    $0x428,%eax
    d03e:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    d042:	3c 05                	cmp    $0x5,%al
    d044:	75 1c                	jne    d062 <partition+0x11d>
    d046:	8b 45 e0             	mov    -0x20(%ebp),%eax
    d049:	8b 55 08             	mov    0x8(%ebp),%edx
    d04c:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d04f:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    d056:	00 
    d057:	89 04 24             	mov    %eax,(%esp)
    d05a:	e8 e6 fe ff ff       	call   cf45 <partition>
    d05f:	eb 01                	jmp    d062 <partition+0x11d>
    d061:	90                   	nop
    d062:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    d066:	83 7d f4 03          	cmpl   $0x3,-0xc(%ebp)
    d06a:	0f 8e 5d ff ff ff    	jle    cfcd <partition+0x88>
    d070:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    d074:	0f 85 21 01 00 00    	jne    d19b <partition+0x256>
    d07a:	c7 44 24 0c 7b 01 00 	movl   $0x17b,0xc(%esp)
    d081:	00 
    d082:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    d089:	00 
    d08a:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    d091:	00 
    d092:	c7 04 24 aa 26 01 00 	movl   $0x126aa,(%esp)
    d099:	e8 2c 33 00 00       	call   103ca <assertion_failure>
    d09e:	e9 f8 00 00 00       	jmp    d19b <partition+0x256>
    d0a3:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
    d0a7:	0f 85 c7 00 00 00    	jne    d174 <partition+0x22f>
    d0ad:	8b 4d 08             	mov    0x8(%ebp),%ecx
    d0b0:	ba 67 66 66 66       	mov    $0x66666667,%edx
    d0b5:	89 c8                	mov    %ecx,%eax
    d0b7:	f7 ea                	imul   %edx
    d0b9:	d1 fa                	sar    %edx
    d0bb:	89 c8                	mov    %ecx,%eax
    d0bd:	c1 f8 1f             	sar    $0x1f,%eax
    d0c0:	29 c2                	sub    %eax,%edx
    d0c2:	89 d0                	mov    %edx,%eax
    d0c4:	c1 e0 02             	shl    $0x2,%eax
    d0c7:	01 d0                	add    %edx,%eax
    d0c9:	89 ca                	mov    %ecx,%edx
    d0cb:	29 c2                	sub    %eax,%edx
    d0cd:	89 d0                	mov    %edx,%eax
    d0cf:	89 45 dc             	mov    %eax,-0x24(%ebp)
    d0d2:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d0d5:	8b 55 dc             	mov    -0x24(%ebp),%edx
    d0d8:	8b 44 d0 04          	mov    0x4(%eax,%edx,8),%eax
    d0dc:	89 45 d8             	mov    %eax,-0x28(%ebp)
    d0df:	8b 45 d8             	mov    -0x28(%ebp),%eax
    d0e2:	89 45 ec             	mov    %eax,-0x14(%ebp)
    d0e5:	8b 45 dc             	mov    -0x24(%ebp),%eax
    d0e8:	83 e8 01             	sub    $0x1,%eax
    d0eb:	c1 e0 04             	shl    $0x4,%eax
    d0ee:	89 45 d4             	mov    %eax,-0x2c(%ebp)
    d0f1:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    d0f8:	eb 72                	jmp    d16c <partition+0x227>
    d0fa:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d0fd:	8b 55 d4             	mov    -0x2c(%ebp),%edx
    d100:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d103:	89 45 d0             	mov    %eax,-0x30(%ebp)
    d106:	8d 85 d0 fb ff ff    	lea    -0x430(%ebp),%eax
    d10c:	89 44 24 08          	mov    %eax,0x8(%esp)
    d110:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d113:	89 44 24 04          	mov    %eax,0x4(%esp)
    d117:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d11a:	89 04 24             	mov    %eax,(%esp)
    d11d:	e8 95 fd ff ff       	call   ceb7 <get_part_table>
    d122:	8b 95 d8 fb ff ff    	mov    -0x428(%ebp),%edx
    d128:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d12b:	8d 0c 02             	lea    (%edx,%eax,1),%ecx
    d12e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d131:	8b 55 d0             	mov    -0x30(%ebp),%edx
    d134:	83 c2 04             	add    $0x4,%edx
    d137:	89 4c d0 0c          	mov    %ecx,0xc(%eax,%edx,8)
    d13b:	8b 95 dc fb ff ff    	mov    -0x424(%ebp),%edx
    d141:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d144:	8b 4d d0             	mov    -0x30(%ebp),%ecx
    d147:	83 c1 04             	add    $0x4,%ecx
    d14a:	89 54 c8 10          	mov    %edx,0x10(%eax,%ecx,8)
    d14e:	8b 95 e8 fb ff ff    	mov    -0x418(%ebp),%edx
    d154:	8b 45 d8             	mov    -0x28(%ebp),%eax
    d157:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d15a:	89 45 ec             	mov    %eax,-0x14(%ebp)
    d15d:	0f b6 85 e4 fb ff ff 	movzbl -0x41c(%ebp),%eax
    d164:	84 c0                	test   %al,%al
    d166:	74 32                	je     d19a <partition+0x255>
    d168:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    d16c:	83 7d f4 0f          	cmpl   $0xf,-0xc(%ebp)
    d170:	7e 88                	jle    d0fa <partition+0x1b5>
    d172:	eb 27                	jmp    d19b <partition+0x256>
    d174:	c7 44 24 0c 94 01 00 	movl   $0x194,0xc(%esp)
    d17b:	00 
    d17c:	c7 44 24 08 40 26 01 	movl   $0x12640,0x8(%esp)
    d183:	00 
    d184:	c7 44 24 04 40 26 01 	movl   $0x12640,0x4(%esp)
    d18b:	00 
    d18c:	c7 04 24 a8 26 01 00 	movl   $0x126a8,(%esp)
    d193:	e8 32 32 00 00       	call   103ca <assertion_failure>
    d198:	eb 01                	jmp    d19b <partition+0x256>
    d19a:	90                   	nop
    d19b:	c9                   	leave  
    d19c:	c3                   	ret    

0000d19d <hd_identify>:
    d19d:	55                   	push   %ebp
    d19e:	89 e5                	mov    %esp,%ebp
    d1a0:	83 ec 28             	sub    $0x28,%esp
    d1a3:	8b 45 08             	mov    0x8(%ebp),%eax
    d1a6:	c1 e0 04             	shl    $0x4,%eax
    d1a9:	83 c8 a0             	or     $0xffffffa0,%eax
    d1ac:	88 45 f2             	mov    %al,-0xe(%ebp)
    d1af:	c6 45 f3 ec          	movb   $0xec,-0xd(%ebp)
    d1b3:	8d 45 ed             	lea    -0x13(%ebp),%eax
    d1b6:	89 04 24             	mov    %eax,(%esp)
    d1b9:	e8 63 02 00 00       	call   d421 <hd_cmd_out>
    d1be:	e8 5b 03 00 00       	call   d51e <interrupt_wait>
    d1c3:	c7 44 24 08 00 02 00 	movl   $0x200,0x8(%esp)
    d1ca:	00 
    d1cb:	c7 44 24 04 80 44 01 	movl   $0x14480,0x4(%esp)
    d1d2:	00 
    d1d3:	c7 04 24 f0 01 00 00 	movl   $0x1f0,(%esp)
    d1da:	e8 b6 7d ff ff       	call   4f95 <port_read>
    d1df:	c7 45 f4 80 44 01 00 	movl   $0x14480,-0xc(%ebp)
    d1e6:	8b 45 08             	mov    0x8(%ebp),%eax
    d1e9:	89 44 24 04          	mov    %eax,0x4(%esp)
    d1ed:	c7 04 24 bd 26 01 00 	movl   $0x126bd,(%esp)
    d1f4:	e8 91 2b 00 00       	call   fd8a <printl>
    d1f9:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d1fc:	89 04 24             	mov    %eax,(%esp)
    d1ff:	e8 49 00 00 00       	call   d24d <print_identify_info>
    d204:	8b 45 08             	mov    0x8(%ebp),%eax
    d207:	69 c0 2c 02 00 00    	imul   $0x22c,%eax,%eax
    d20d:	05 80 48 01 00       	add    $0x14880,%eax
    d212:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    d219:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d21c:	83 c0 7a             	add    $0x7a,%eax
    d21f:	0f b7 00             	movzwl (%eax),%eax
    d222:	0f b7 c0             	movzwl %ax,%eax
    d225:	89 c2                	mov    %eax,%edx
    d227:	c1 e2 10             	shl    $0x10,%edx
    d22a:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d22d:	83 c0 78             	add    $0x78,%eax
    d230:	0f b7 00             	movzwl (%eax),%eax
    d233:	0f b7 c0             	movzwl %ax,%eax
    d236:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d239:	8b 55 08             	mov    0x8(%ebp),%edx
    d23c:	69 d2 2c 02 00 00    	imul   $0x22c,%edx,%edx
    d242:	81 c2 80 48 01 00    	add    $0x14880,%edx
    d248:	89 42 08             	mov    %eax,0x8(%edx)
    d24b:	c9                   	leave  
    d24c:	c3                   	ret    

0000d24d <print_identify_info>:
    d24d:	55                   	push   %ebp
    d24e:	89 e5                	mov    %esp,%ebp
    d250:	81 ec 98 00 00 00    	sub    $0x98,%esp
    d256:	c7 45 84 1b 00 00 00 	movl   $0x1b,-0x7c(%ebp)
    d25d:	c7 45 88 28 00 00 00 	movl   $0x28,-0x78(%ebp)
    d264:	c7 45 8c c4 26 01 00 	movl   $0x126c4,-0x74(%ebp)
    d26b:	c7 45 90 0a 00 00 00 	movl   $0xa,-0x70(%ebp)
    d272:	c7 45 94 14 00 00 00 	movl   $0x14,-0x6c(%ebp)
    d279:	c7 45 98 cf 26 01 00 	movl   $0x126cf,-0x68(%ebp)
    d280:	8b 45 08             	mov    0x8(%ebp),%eax
    d283:	83 c0 7a             	add    $0x7a,%eax
    d286:	0f b7 00             	movzwl (%eax),%eax
    d289:	0f b7 c0             	movzwl %ax,%eax
    d28c:	89 c2                	mov    %eax,%edx
    d28e:	c1 e2 10             	shl    $0x10,%edx
    d291:	8b 45 08             	mov    0x8(%ebp),%eax
    d294:	83 c0 78             	add    $0x78,%eax
    d297:	0f b7 00             	movzwl (%eax),%eax
    d29a:	0f b7 c0             	movzwl %ax,%eax
    d29d:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d2a0:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    d2a3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    d2a6:	89 c1                	mov    %eax,%ecx
    d2a8:	c1 e1 09             	shl    $0x9,%ecx
    d2ab:	ba 83 de 1b 43       	mov    $0x431bde83,%edx
    d2b0:	89 c8                	mov    %ecx,%eax
    d2b2:	f7 ea                	imul   %edx
    d2b4:	c1 fa 12             	sar    $0x12,%edx
    d2b7:	89 c8                	mov    %ecx,%eax
    d2b9:	c1 f8 1f             	sar    $0x1f,%eax
    d2bc:	89 d1                	mov    %edx,%ecx
    d2be:	29 c1                	sub    %eax,%ecx
    d2c0:	89 c8                	mov    %ecx,%eax
    d2c2:	89 44 24 04          	mov    %eax,0x4(%esp)
    d2c6:	c7 04 24 e2 26 01 00 	movl   $0x126e2,(%esp)
    d2cd:	e8 b8 2a 00 00       	call   fd8a <printl>
    d2d2:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    d2d9:	e9 d9 00 00 00       	jmp    d3b7 <print_identify_info+0x16a>
    d2de:	8b 4d 08             	mov    0x8(%ebp),%ecx
    d2e1:	8b 55 ec             	mov    -0x14(%ebp),%edx
    d2e4:	89 d0                	mov    %edx,%eax
    d2e6:	01 c0                	add    %eax,%eax
    d2e8:	01 d0                	add    %edx,%eax
    d2ea:	c1 e0 02             	shl    $0x2,%eax
    d2ed:	8d 55 f8             	lea    -0x8(%ebp),%edx
    d2f0:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d2f3:	83 e8 74             	sub    $0x74,%eax
    d2f6:	8b 00                	mov    (%eax),%eax
    d2f8:	01 c0                	add    %eax,%eax
    d2fa:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    d2fd:	89 45 e8             	mov    %eax,-0x18(%ebp)
    d300:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
    d307:	eb 2e                	jmp    d337 <print_identify_info+0xea>
    d309:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d30c:	01 c0                	add    %eax,%eax
    d30e:	8d 50 01             	lea    0x1(%eax),%edx
    d311:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d314:	0f b6 00             	movzbl (%eax),%eax
    d317:	88 44 15 9c          	mov    %al,-0x64(%ebp,%edx,1)
    d31b:	83 45 e8 01          	addl   $0x1,-0x18(%ebp)
    d31f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d322:	8d 14 00             	lea    (%eax,%eax,1),%edx
    d325:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d328:	0f b6 00             	movzbl (%eax),%eax
    d32b:	88 44 15 9c          	mov    %al,-0x64(%ebp,%edx,1)
    d32f:	83 45 e8 01          	addl   $0x1,-0x18(%ebp)
    d333:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    d337:	8b 55 ec             	mov    -0x14(%ebp),%edx
    d33a:	89 d0                	mov    %edx,%eax
    d33c:	01 c0                	add    %eax,%eax
    d33e:	01 d0                	add    %edx,%eax
    d340:	c1 e0 02             	shl    $0x2,%eax
    d343:	8d 4d f8             	lea    -0x8(%ebp),%ecx
    d346:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    d349:	83 e8 70             	sub    $0x70,%eax
    d34c:	8b 00                	mov    (%eax),%eax
    d34e:	89 c2                	mov    %eax,%edx
    d350:	c1 ea 1f             	shr    $0x1f,%edx
    d353:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d356:	d1 f8                	sar    %eax
    d358:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    d35b:	7f ac                	jg     d309 <print_identify_info+0xbc>
    d35d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d360:	01 c0                	add    %eax,%eax
    d362:	c6 44 05 9c 00       	movb   $0x0,-0x64(%ebp,%eax,1)
    d367:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    d36e:	eb 2d                	jmp    d39d <print_identify_info+0x150>
    d370:	8d 45 9c             	lea    -0x64(%ebp),%eax
    d373:	03 45 f0             	add    -0x10(%ebp),%eax
    d376:	0f b6 00             	movzbl (%eax),%eax
    d379:	3c 20                	cmp    $0x20,%al
    d37b:	74 1c                	je     d399 <print_identify_info+0x14c>
    d37d:	8d 45 9c             	lea    -0x64(%ebp),%eax
    d380:	03 45 f0             	add    -0x10(%ebp),%eax
    d383:	0f b6 00             	movzbl (%eax),%eax
    d386:	0f be c0             	movsbl %al,%eax
    d389:	89 44 24 04          	mov    %eax,0x4(%esp)
    d38d:	c7 04 24 e8 26 01 00 	movl   $0x126e8,(%esp)
    d394:	e8 f1 29 00 00       	call   fd8a <printl>
    d399:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    d39d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d3a0:	01 c0                	add    %eax,%eax
    d3a2:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    d3a5:	7d c9                	jge    d370 <print_identify_info+0x123>
    d3a7:	c7 04 24 eb 26 01 00 	movl   $0x126eb,(%esp)
    d3ae:	e8 d7 29 00 00       	call   fd8a <printl>
    d3b3:	83 45 ec 01          	addl   $0x1,-0x14(%ebp)
    d3b7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d3ba:	83 f8 01             	cmp    $0x1,%eax
    d3bd:	0f 86 1b ff ff ff    	jbe    d2de <print_identify_info+0x91>
    d3c3:	8b 45 08             	mov    0x8(%ebp),%eax
    d3c6:	83 c0 62             	add    $0x62,%eax
    d3c9:	0f b7 00             	movzwl (%eax),%eax
    d3cc:	0f b7 c0             	movzwl %ax,%eax
    d3cf:	89 45 e0             	mov    %eax,-0x20(%ebp)
    d3d2:	8b 45 e0             	mov    -0x20(%ebp),%eax
    d3d5:	25 00 02 00 00       	and    $0x200,%eax
    d3da:	85 c0                	test   %eax,%eax
    d3dc:	74 0c                	je     d3ea <print_identify_info+0x19d>
    d3de:	c7 04 24 ed 26 01 00 	movl   $0x126ed,(%esp)
    d3e5:	e8 a0 29 00 00       	call   fd8a <printl>
    d3ea:	8b 45 08             	mov    0x8(%ebp),%eax
    d3ed:	05 a6 00 00 00       	add    $0xa6,%eax
    d3f2:	0f b7 00             	movzwl (%eax),%eax
    d3f5:	0f b7 c0             	movzwl %ax,%eax
    d3f8:	89 45 dc             	mov    %eax,-0x24(%ebp)
    d3fb:	8b 45 dc             	mov    -0x24(%ebp),%eax
    d3fe:	25 00 04 00 00       	and    $0x400,%eax
    d403:	85 c0                	test   %eax,%eax
    d405:	74 0c                	je     d413 <print_identify_info+0x1c6>
    d407:	c7 04 24 f2 26 01 00 	movl   $0x126f2,(%esp)
    d40e:	e8 77 29 00 00       	call   fd8a <printl>
    d413:	c7 04 24 f9 26 01 00 	movl   $0x126f9,(%esp)
    d41a:	e8 6b 29 00 00       	call   fd8a <printl>
    d41f:	c9                   	leave  
    d420:	c3                   	ret    

0000d421 <hd_cmd_out>:
    d421:	55                   	push   %ebp
    d422:	89 e5                	mov    %esp,%ebp
    d424:	83 ec 18             	sub    $0x18,%esp
    d427:	c7 44 24 08 10 27 00 	movl   $0x2710,0x8(%esp)
    d42e:	00 
    d42f:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    d436:	00 
    d437:	c7 04 24 80 00 00 00 	movl   $0x80,(%esp)
    d43e:	e8 fe 00 00 00       	call   d541 <waitfor>
    d443:	85 c0                	test   %eax,%eax
    d445:	75 0c                	jne    d453 <hd_cmd_out+0x32>
    d447:	c7 04 24 fb 26 01 00 	movl   $0x126fb,(%esp)
    d44e:	e8 e4 4a ff ff       	call   1f37 <panic>
    d453:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    d45a:	00 
    d45b:	c7 04 24 f6 03 00 00 	movl   $0x3f6,(%esp)
    d462:	e8 18 7b ff ff       	call   4f7f <out_byte>
    d467:	8b 45 08             	mov    0x8(%ebp),%eax
    d46a:	0f b6 00             	movzbl (%eax),%eax
    d46d:	0f b6 c0             	movzbl %al,%eax
    d470:	89 44 24 04          	mov    %eax,0x4(%esp)
    d474:	c7 04 24 f1 01 00 00 	movl   $0x1f1,(%esp)
    d47b:	e8 ff 7a ff ff       	call   4f7f <out_byte>
    d480:	8b 45 08             	mov    0x8(%ebp),%eax
    d483:	0f b6 40 01          	movzbl 0x1(%eax),%eax
    d487:	0f b6 c0             	movzbl %al,%eax
    d48a:	89 44 24 04          	mov    %eax,0x4(%esp)
    d48e:	c7 04 24 f2 01 00 00 	movl   $0x1f2,(%esp)
    d495:	e8 e5 7a ff ff       	call   4f7f <out_byte>
    d49a:	8b 45 08             	mov    0x8(%ebp),%eax
    d49d:	0f b6 40 02          	movzbl 0x2(%eax),%eax
    d4a1:	0f b6 c0             	movzbl %al,%eax
    d4a4:	89 44 24 04          	mov    %eax,0x4(%esp)
    d4a8:	c7 04 24 f3 01 00 00 	movl   $0x1f3,(%esp)
    d4af:	e8 cb 7a ff ff       	call   4f7f <out_byte>
    d4b4:	8b 45 08             	mov    0x8(%ebp),%eax
    d4b7:	0f b6 40 03          	movzbl 0x3(%eax),%eax
    d4bb:	0f b6 c0             	movzbl %al,%eax
    d4be:	89 44 24 04          	mov    %eax,0x4(%esp)
    d4c2:	c7 04 24 f4 01 00 00 	movl   $0x1f4,(%esp)
    d4c9:	e8 b1 7a ff ff       	call   4f7f <out_byte>
    d4ce:	8b 45 08             	mov    0x8(%ebp),%eax
    d4d1:	0f b6 40 04          	movzbl 0x4(%eax),%eax
    d4d5:	0f b6 c0             	movzbl %al,%eax
    d4d8:	89 44 24 04          	mov    %eax,0x4(%esp)
    d4dc:	c7 04 24 f5 01 00 00 	movl   $0x1f5,(%esp)
    d4e3:	e8 97 7a ff ff       	call   4f7f <out_byte>
    d4e8:	8b 45 08             	mov    0x8(%ebp),%eax
    d4eb:	0f b6 40 05          	movzbl 0x5(%eax),%eax
    d4ef:	0f b6 c0             	movzbl %al,%eax
    d4f2:	89 44 24 04          	mov    %eax,0x4(%esp)
    d4f6:	c7 04 24 f6 01 00 00 	movl   $0x1f6,(%esp)
    d4fd:	e8 7d 7a ff ff       	call   4f7f <out_byte>
    d502:	8b 45 08             	mov    0x8(%ebp),%eax
    d505:	0f b6 40 06          	movzbl 0x6(%eax),%eax
    d509:	0f b6 c0             	movzbl %al,%eax
    d50c:	89 44 24 04          	mov    %eax,0x4(%esp)
    d510:	c7 04 24 f7 01 00 00 	movl   $0x1f7,(%esp)
    d517:	e8 63 7a ff ff       	call   4f7f <out_byte>
    d51c:	c9                   	leave  
    d51d:	c3                   	ret    

0000d51e <interrupt_wait>:
    d51e:	55                   	push   %ebp
    d51f:	89 e5                	mov    %esp,%ebp
    d521:	83 ec 48             	sub    $0x48,%esp
    d524:	8d 45 c8             	lea    -0x38(%ebp),%eax
    d527:	89 44 24 08          	mov    %eax,0x8(%esp)
    d52b:	c7 44 24 04 f6 ff ff 	movl   $0xfffffff6,0x4(%esp)
    d532:	ff 
    d533:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    d53a:	e8 39 2c 00 00       	call   10178 <send_recv>
    d53f:	c9                   	leave  
    d540:	c3                   	ret    

0000d541 <waitfor>:
    d541:	55                   	push   %ebp
    d542:	89 e5                	mov    %esp,%ebp
    d544:	83 ec 28             	sub    $0x28,%esp
    d547:	e8 2a 43 ff ff       	call   1876 <get_ticks>
    d54c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    d54f:	eb 1e                	jmp    d56f <waitfor+0x2e>
    d551:	c7 04 24 f7 01 00 00 	movl   $0x1f7,(%esp)
    d558:	e8 2e 7a ff ff       	call   4f8b <in_byte>
    d55d:	0f b6 c0             	movzbl %al,%eax
    d560:	23 45 08             	and    0x8(%ebp),%eax
    d563:	3b 45 0c             	cmp    0xc(%ebp),%eax
    d566:	75 07                	jne    d56f <waitfor+0x2e>
    d568:	b8 01 00 00 00       	mov    $0x1,%eax
    d56d:	eb 2f                	jmp    d59e <waitfor+0x5d>
    d56f:	e8 02 43 ff ff       	call   1876 <get_ticks>
    d574:	2b 45 f4             	sub    -0xc(%ebp),%eax
    d577:	69 c8 e8 03 00 00    	imul   $0x3e8,%eax,%ecx
    d57d:	ba 1f 85 eb 51       	mov    $0x51eb851f,%edx
    d582:	89 c8                	mov    %ecx,%eax
    d584:	f7 ea                	imul   %edx
    d586:	c1 fa 05             	sar    $0x5,%edx
    d589:	89 c8                	mov    %ecx,%eax
    d58b:	c1 f8 1f             	sar    $0x1f,%eax
    d58e:	89 d1                	mov    %edx,%ecx
    d590:	29 c1                	sub    %eax,%ecx
    d592:	89 c8                	mov    %ecx,%eax
    d594:	3b 45 10             	cmp    0x10(%ebp),%eax
    d597:	7c b8                	jl     d551 <waitfor+0x10>
    d599:	b8 00 00 00 00       	mov    $0x0,%eax
    d59e:	c9                   	leave  
    d59f:	c3                   	ret    

0000d5a0 <hd_handler>:
    d5a0:	55                   	push   %ebp
    d5a1:	89 e5                	mov    %esp,%ebp
    d5a3:	83 ec 18             	sub    $0x18,%esp
    d5a6:	c7 04 24 f7 01 00 00 	movl   $0x1f7,(%esp)
    d5ad:	e8 d9 79 ff ff       	call   4f8b <in_byte>
    d5b2:	a2 60 44 01 00       	mov    %al,0x14460
    d5b7:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    d5be:	e8 b0 6f ff ff       	call   4573 <inform_int>
    d5c3:	c9                   	leave  
    d5c4:	c3                   	ret    
    d5c5:	90                   	nop
    d5c6:	90                   	nop
    d5c7:	90                   	nop

0000d5c8 <task_rd>:
    d5c8:	55                   	push   %ebp
    d5c9:	89 e5                	mov    %esp,%ebp
    d5cb:	83 ec 58             	sub    $0x58,%esp
    d5ce:	90                   	nop
    d5cf:	a1 60 0c 05 00       	mov    0x50c60,%eax
    d5d4:	85 c0                	test   %eax,%eax
    d5d6:	74 f7                	je     d5cf <task_rd+0x7>
    d5d8:	a1 60 4b 01 00       	mov    0x14b60,%eax
    d5dd:	85 c0                	test   %eax,%eax
    d5df:	74 ee                	je     d5cf <task_rd+0x7>
    d5e1:	e8 ad 01 00 00       	call   d793 <init_rd>
    d5e6:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    d5e9:	89 44 24 08          	mov    %eax,0x8(%esp)
    d5ed:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    d5f4:	00 
    d5f5:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    d5fc:	e8 77 2b 00 00       	call   10178 <send_recv>
    d601:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    d604:	89 45 f4             	mov    %eax,-0xc(%ebp)
    d607:	8b 45 c8             	mov    -0x38(%ebp),%eax
    d60a:	2d d1 07 00 00       	sub    $0x7d1,%eax
    d60f:	83 f8 04             	cmp    $0x4,%eax
    d612:	77 16                	ja     d62a <task_rd+0x62>
    d614:	8b 04 85 48 27 01 00 	mov    0x12748(,%eax,4),%eax
    d61b:	ff e0                	jmp    *%eax
    d61d:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    d620:	89 04 24             	mov    %eax,(%esp)
    d623:	e8 9c 00 00 00       	call   d6c4 <rd_rdwt>
    d628:	eb 22                	jmp    d64c <task_rd+0x84>
    d62a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    d62d:	89 44 24 04          	mov    %eax,0x4(%esp)
    d631:	c7 04 24 08 27 01 00 	movl   $0x12708,(%esp)
    d638:	e8 4a 74 ff ff       	call   4a87 <dump_msg>
    d63d:	c7 04 24 24 27 01 00 	movl   $0x12724,(%esp)
    d644:	e8 66 2d 00 00       	call   103af <spin>
    d649:	eb 01                	jmp    d64c <task_rd+0x84>
    d64b:	90                   	nop
    d64c:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    d64f:	89 44 24 08          	mov    %eax,0x8(%esp)
    d653:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d656:	89 44 24 04          	mov    %eax,0x4(%esp)
    d65a:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    d661:	e8 12 2b 00 00       	call   10178 <send_recv>
    d666:	e9 7b ff ff ff       	jmp    d5e6 <task_rd+0x1e>

0000d66b <do_rd_request>:
    d66b:	55                   	push   %ebp
    d66c:	89 e5                	mov    %esp,%ebp
    d66e:	83 ec 18             	sub    $0x18,%esp
    d671:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d676:	8b 00                	mov    (%eax),%eax
    d678:	85 c0                	test   %eax,%eax
    d67a:	74 0f                	je     d68b <do_rd_request+0x20>
    d67c:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d681:	8b 00                	mov    (%eax),%eax
    d683:	89 04 24             	mov    %eax,(%esp)
    d686:	e8 39 00 00 00       	call   d6c4 <rd_rdwt>
    d68b:	c9                   	leave  
    d68c:	c3                   	ret    

0000d68d <end_request>:
    d68d:	55                   	push   %ebp
    d68e:	89 e5                	mov    %esp,%ebp
    d690:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d695:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
    d69b:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d6a0:	8b 40 08             	mov    0x8(%eax),%eax
    d6a3:	8b 00                	mov    (%eax),%eax
    d6a5:	85 c0                	test   %eax,%eax
    d6a7:	74 19                	je     d6c2 <end_request+0x35>
    d6a9:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d6ae:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%eax)
    d6b5:	a1 c8 4a 01 00       	mov    0x14ac8,%eax
    d6ba:	8b 40 08             	mov    0x8(%eax),%eax
    d6bd:	a3 c8 4a 01 00       	mov    %eax,0x14ac8
    d6c2:	5d                   	pop    %ebp
    d6c3:	c3                   	ret    

0000d6c4 <rd_rdwt>:
    d6c4:	55                   	push   %ebp
    d6c5:	89 e5                	mov    %esp,%ebp
    d6c7:	83 ec 28             	sub    $0x28,%esp
    d6ca:	8b 45 08             	mov    0x8(%ebp),%eax
    d6cd:	8b 50 1c             	mov    0x1c(%eax),%edx
    d6d0:	8b 40 18             	mov    0x18(%eax),%eax
    d6d3:	89 45 f0             	mov    %eax,-0x10(%ebp)
    d6d6:	89 55 f4             	mov    %edx,-0xc(%ebp)
    d6d9:	a1 60 0c 05 00       	mov    0x50c60,%eax
    d6de:	89 c2                	mov    %eax,%edx
    d6e0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    d6e3:	8d 04 02             	lea    (%edx,%eax,1),%eax
    d6e6:	89 45 ec             	mov    %eax,-0x14(%ebp)
    d6e9:	8b 45 08             	mov    0x8(%ebp),%eax
    d6ec:	8b 40 0c             	mov    0xc(%eax),%eax
    d6ef:	89 45 e8             	mov    %eax,-0x18(%ebp)
    d6f2:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d6f5:	03 45 ec             	add    -0x14(%ebp),%eax
    d6f8:	8b 15 60 0c 05 00    	mov    0x50c60,%edx
    d6fe:	89 d1                	mov    %edx,%ecx
    d700:	8b 15 60 4b 01 00    	mov    0x14b60,%edx
    d706:	8d 14 11             	lea    (%ecx,%edx,1),%edx
    d709:	39 d0                	cmp    %edx,%eax
    d70b:	76 0c                	jbe    d719 <rd_rdwt+0x55>
    d70d:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    d714:	e8 74 ff ff ff       	call   d68d <end_request>
    d719:	8b 45 08             	mov    0x8(%ebp),%eax
    d71c:	8b 40 04             	mov    0x4(%eax),%eax
    d71f:	3d d4 07 00 00       	cmp    $0x7d4,%eax
    d724:	75 30                	jne    d756 <rd_rdwt+0x92>
    d726:	8b 45 08             	mov    0x8(%ebp),%eax
    d729:	8b 50 2c             	mov    0x2c(%eax),%edx
    d72c:	8b 45 08             	mov    0x8(%ebp),%eax
    d72f:	8b 40 10             	mov    0x10(%eax),%eax
    d732:	89 54 24 04          	mov    %edx,0x4(%esp)
    d736:	89 04 24             	mov    %eax,(%esp)
    d739:	e8 97 5d ff ff       	call   34d5 <va2la>
    d73e:	8b 55 e8             	mov    -0x18(%ebp),%edx
    d741:	89 54 24 08          	mov    %edx,0x8(%esp)
    d745:	89 44 24 04          	mov    %eax,0x4(%esp)
    d749:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d74c:	89 04 24             	mov    %eax,(%esp)
    d74f:	e8 9c 29 00 00       	call   100f0 <memcpy>
    d754:	eb 3b                	jmp    d791 <rd_rdwt+0xcd>
    d756:	8b 45 08             	mov    0x8(%ebp),%eax
    d759:	8b 40 04             	mov    0x4(%eax),%eax
    d75c:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    d761:	75 2e                	jne    d791 <rd_rdwt+0xcd>
    d763:	8b 45 08             	mov    0x8(%ebp),%eax
    d766:	8b 50 2c             	mov    0x2c(%eax),%edx
    d769:	8b 45 08             	mov    0x8(%ebp),%eax
    d76c:	8b 40 10             	mov    0x10(%eax),%eax
    d76f:	89 54 24 04          	mov    %edx,0x4(%esp)
    d773:	89 04 24             	mov    %eax,(%esp)
    d776:	e8 5a 5d ff ff       	call   34d5 <va2la>
    d77b:	8b 55 e8             	mov    -0x18(%ebp),%edx
    d77e:	89 54 24 08          	mov    %edx,0x8(%esp)
    d782:	8b 55 ec             	mov    -0x14(%ebp),%edx
    d785:	89 54 24 04          	mov    %edx,0x4(%esp)
    d789:	89 04 24             	mov    %eax,(%esp)
    d78c:	e8 5f 29 00 00       	call   100f0 <memcpy>
    d791:	c9                   	leave  
    d792:	c3                   	ret    

0000d793 <init_rd>:
    d793:	55                   	push   %ebp
    d794:	89 e5                	mov    %esp,%ebp
    d796:	83 ec 28             	sub    $0x28,%esp
    d799:	b8 6b d6 00 00       	mov    $0xd66b,%eax
    d79e:	a3 cc 4a 01 00       	mov    %eax,0x14acc
    d7a3:	a1 60 0c 05 00       	mov    0x50c60,%eax
    d7a8:	89 45 f4             	mov    %eax,-0xc(%ebp)
    d7ab:	8b 0d 60 0c 05 00    	mov    0x50c60,%ecx
    d7b1:	a1 60 4b 01 00       	mov    0x14b60,%eax
    d7b6:	8d 90 ff 03 00 00    	lea    0x3ff(%eax),%edx
    d7bc:	85 c0                	test   %eax,%eax
    d7be:	0f 48 c2             	cmovs  %edx,%eax
    d7c1:	c1 f8 0a             	sar    $0xa,%eax
    d7c4:	89 c2                	mov    %eax,%edx
    d7c6:	a1 60 4b 01 00       	mov    0x14b60,%eax
    d7cb:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
    d7cf:	89 54 24 08          	mov    %edx,0x8(%esp)
    d7d3:	89 44 24 04          	mov    %eax,0x4(%esp)
    d7d7:	c7 04 24 5c 27 01 00 	movl   $0x1275c,(%esp)
    d7de:	e8 a7 25 00 00       	call   fd8a <printl>
    d7e3:	c9                   	leave  
    d7e4:	c3                   	ret    

0000d7e5 <rd_load_image>:
    d7e5:	55                   	push   %ebp
    d7e6:	89 e5                	mov    %esp,%ebp
    d7e8:	53                   	push   %ebx
    d7e9:	83 ec 54             	sub    $0x54,%esp
    d7ec:	8b 45 08             	mov    0x8(%ebp),%eax
    d7ef:	66 89 45 d4          	mov    %ax,-0x2c(%ebp)
    d7f3:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    d7f9:	8b 45 0c             	mov    0xc(%ebp),%eax
    d7fc:	c1 e0 09             	shl    $0x9,%eax
    d7ff:	89 c2                	mov    %eax,%edx
    d801:	c1 fa 1f             	sar    $0x1f,%edx
    d804:	0f b7 4d d4          	movzwl -0x2c(%ebp),%ecx
    d808:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    d80c:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    d813:	00 
    d814:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    d81b:	00 
    d81c:	89 44 24 08          	mov    %eax,0x8(%esp)
    d820:	89 54 24 0c          	mov    %edx,0xc(%esp)
    d824:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    d828:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    d82f:	e8 7a 8b ff ff       	call   63ae <rw_sector>
    d834:	a1 e8 32 01 00       	mov    0x132e8,%eax
    d839:	89 45 ec             	mov    %eax,-0x14(%ebp)
    d83c:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d83f:	8b 00                	mov    (%eax),%eax
    d841:	3d 11 01 00 00       	cmp    $0x111,%eax
    d846:	0f 85 6c 01 00 00    	jne    d9b8 <rd_load_image+0x1d3>
    d84c:	8b 45 0c             	mov    0xc(%ebp),%eax
    d84f:	89 44 24 04          	mov    %eax,0x4(%esp)
    d853:	c7 04 24 84 27 01 00 	movl   $0x12784,(%esp)
    d85a:	e8 2b 25 00 00       	call   fd8a <printl>
    d85f:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d862:	8b 40 08             	mov    0x8(%eax),%eax
    d865:	89 45 e8             	mov    %eax,-0x18(%ebp)
    d868:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d86b:	89 c2                	mov    %eax,%edx
    d86d:	c1 e2 09             	shl    $0x9,%edx
    d870:	a1 60 4b 01 00       	mov    0x14b60,%eax
    d875:	39 c2                	cmp    %eax,%edx
    d877:	7e 2f                	jle    d8a8 <rd_load_image+0xc3>
    d879:	a1 60 4b 01 00       	mov    0x14b60,%eax
    d87e:	8d 90 ff 01 00 00    	lea    0x1ff(%eax),%edx
    d884:	85 c0                	test   %eax,%eax
    d886:	0f 48 c2             	cmovs  %edx,%eax
    d889:	c1 f8 09             	sar    $0x9,%eax
    d88c:	89 44 24 08          	mov    %eax,0x8(%esp)
    d890:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d893:	89 44 24 04          	mov    %eax,0x4(%esp)
    d897:	c7 04 24 b4 27 01 00 	movl   $0x127b4,(%esp)
    d89e:	e8 e7 24 00 00       	call   fd8a <printl>
    d8a3:	e9 11 01 00 00       	jmp    d9b9 <rd_load_image+0x1d4>
    d8a8:	8b 45 e8             	mov    -0x18(%ebp),%eax
    d8ab:	c1 e0 09             	shl    $0x9,%eax
    d8ae:	89 44 24 04          	mov    %eax,0x4(%esp)
    d8b2:	c7 04 24 e0 27 01 00 	movl   $0x127e0,(%esp)
    d8b9:	e8 cc 24 00 00       	call   fd8a <printl>
    d8be:	c6 45 e4 7c          	movb   $0x7c,-0x1c(%ebp)
    d8c2:	c6 45 e5 2f          	movb   $0x2f,-0x1b(%ebp)
    d8c6:	c6 45 e6 2d          	movb   $0x2d,-0x1a(%ebp)
    d8ca:	c6 45 e7 5c          	movb   $0x5c,-0x19(%ebp)
    d8ce:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    d8d5:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    d8dc:	e9 b2 00 00 00       	jmp    d993 <rd_load_image+0x1ae>
    d8e1:	8b 1d e8 32 01 00    	mov    0x132e8,%ebx
    d8e7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d8ea:	c1 e0 09             	shl    $0x9,%eax
    d8ed:	89 c2                	mov    %eax,%edx
    d8ef:	c1 fa 1f             	sar    $0x1f,%edx
    d8f2:	0f b7 4d d4          	movzwl -0x2c(%ebp),%ecx
    d8f6:	89 5c 24 18          	mov    %ebx,0x18(%esp)
    d8fa:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    d901:	00 
    d902:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    d909:	00 
    d90a:	89 44 24 08          	mov    %eax,0x8(%esp)
    d90e:	89 54 24 0c          	mov    %edx,0xc(%esp)
    d912:	89 4c 24 04          	mov    %ecx,0x4(%esp)
    d916:	c7 04 24 d3 07 00 00 	movl   $0x7d3,(%esp)
    d91d:	e8 8c 8a ff ff       	call   63ae <rw_sector>
    d922:	8b 0d e8 32 01 00    	mov    0x132e8,%ecx
    d928:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d92b:	c1 e0 09             	shl    $0x9,%eax
    d92e:	89 c2                	mov    %eax,%edx
    d930:	c1 fa 1f             	sar    $0x1f,%edx
    d933:	89 4c 24 18          	mov    %ecx,0x18(%esp)
    d937:	c7 44 24 14 03 00 00 	movl   $0x3,0x14(%esp)
    d93e:	00 
    d93f:	c7 44 24 10 00 02 00 	movl   $0x200,0x10(%esp)
    d946:	00 
    d947:	89 44 24 08          	mov    %eax,0x8(%esp)
    d94b:	89 54 24 0c          	mov    %edx,0xc(%esp)
    d94f:	c7 44 24 04 00 01 00 	movl   $0x100,0x4(%esp)
    d956:	00 
    d957:	c7 04 24 d4 07 00 00 	movl   $0x7d4,(%esp)
    d95e:	e8 4b 8a ff ff       	call   63ae <rw_sector>
    d963:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d966:	83 e0 0f             	and    $0xf,%eax
    d969:	85 c0                	test   %eax,%eax
    d96b:	75 22                	jne    d98f <rd_load_image+0x1aa>
    d96d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    d970:	83 e0 03             	and    $0x3,%eax
    d973:	0f b6 44 05 e4       	movzbl -0x1c(%ebp,%eax,1),%eax
    d978:	0f be c0             	movsbl %al,%eax
    d97b:	89 44 24 04          	mov    %eax,0x4(%esp)
    d97f:	c7 04 24 01 28 01 00 	movl   $0x12801,(%esp)
    d986:	e8 ff 23 00 00       	call   fd8a <printl>
    d98b:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    d98f:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    d993:	8b 45 f4             	mov    -0xc(%ebp),%eax
    d996:	3b 45 e8             	cmp    -0x18(%ebp),%eax
    d999:	0f 8e 42 ff ff ff    	jle    d8e1 <rd_load_image+0xfc>
    d99f:	c7 04 24 05 28 01 00 	movl   $0x12805,(%esp)
    d9a6:	e8 df 23 00 00       	call   fd8a <printl>
    d9ab:	c7 05 20 30 01 00 00 	movl   $0x100,0x13020
    d9b2:	01 00 00 
    d9b5:	90                   	nop
    d9b6:	eb 01                	jmp    d9b9 <rd_load_image+0x1d4>
    d9b8:	90                   	nop
    d9b9:	83 c4 54             	add    $0x54,%esp
    d9bc:	5b                   	pop    %ebx
    d9bd:	5d                   	pop    %ebp
    d9be:	c3                   	ret    
    d9bf:	90                   	nop

0000d9c0 <add_request>:
    d9c0:	55                   	push   %ebp
    d9c1:	89 e5                	mov    %esp,%ebp
    d9c3:	83 ec 28             	sub    $0x28,%esp
    d9c6:	8b 45 08             	mov    0x8(%ebp),%eax
    d9c9:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
    d9cd:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    d9d4:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d9d7:	8b 55 0c             	mov    0xc(%ebp),%edx
    d9da:	89 10                	mov    %edx,(%eax)
    d9dc:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d9df:	c7 40 04 00 00 00 00 	movl   $0x0,0x4(%eax)
    d9e6:	8b 45 ec             	mov    -0x14(%ebp),%eax
    d9e9:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%eax)
    d9f0:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
    d9f4:	8b 04 c5 c0 4a 01 00 	mov    0x14ac0(,%eax,8),%eax
    d9fb:	89 45 f4             	mov    %eax,-0xc(%ebp)
    d9fe:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
    da02:	8b 04 c5 c0 4a 01 00 	mov    0x14ac0(,%eax,8),%eax
    da09:	85 c0                	test   %eax,%eax
    da0b:	75 21                	jne    da2e <add_request+0x6e>
    da0d:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
    da11:	8b 04 c5 c0 4a 01 00 	mov    0x14ac0(,%eax,8),%eax
    da18:	8b 55 ec             	mov    -0x14(%ebp),%edx
    da1b:	8b 12                	mov    (%edx),%edx
    da1d:	89 10                	mov    %edx,(%eax)
    da1f:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
    da23:	8b 04 c5 c4 4a 01 00 	mov    0x14ac4(,%eax,8),%eax
    da2a:	ff d0                	call   *%eax
    da2c:	eb 36                	jmp    da64 <add_request+0xa4>
    da2e:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    da35:	eb 17                	jmp    da4e <add_request+0x8e>
    da37:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    da3b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    da3e:	8b 40 08             	mov    0x8(%eax),%eax
    da41:	85 c0                	test   %eax,%eax
    da43:	74 15                	je     da5a <add_request+0x9a>
    da45:	8b 45 f4             	mov    -0xc(%ebp),%eax
    da48:	8b 40 08             	mov    0x8(%eax),%eax
    da4b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    da4e:	8b 45 f4             	mov    -0xc(%ebp),%eax
    da51:	8b 40 08             	mov    0x8(%eax),%eax
    da54:	85 c0                	test   %eax,%eax
    da56:	75 df                	jne    da37 <add_request+0x77>
    da58:	eb 01                	jmp    da5b <add_request+0x9b>
    da5a:	90                   	nop
    da5b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    da5e:	8b 55 ec             	mov    -0x14(%ebp),%edx
    da61:	89 50 08             	mov    %edx,0x8(%eax)
    da64:	c9                   	leave  
    da65:	c3                   	ret    
    da66:	90                   	nop
    da67:	90                   	nop

0000da68 <task_scsi>:
    da68:	55                   	push   %ebp
    da69:	89 e5                	mov    %esp,%ebp
    da6b:	83 ec 58             	sub    $0x58,%esp
    da6e:	e8 97 00 00 00       	call   db0a <init_scsi>
    da73:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    da76:	89 44 24 08          	mov    %eax,0x8(%esp)
    da7a:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    da81:	00 
    da82:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    da89:	e8 ea 26 00 00       	call   10178 <send_recv>
    da8e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    da91:	89 45 f4             	mov    %eax,-0xc(%ebp)
    da94:	8b 45 c8             	mov    -0x38(%ebp),%eax
    da97:	2d d1 07 00 00       	sub    $0x7d1,%eax
    da9c:	83 f8 04             	cmp    $0x4,%eax
    da9f:	77 1e                	ja     dabf <task_scsi+0x57>
    daa1:	8b 04 85 4c 28 01 00 	mov    0x1284c(,%eax,4),%eax
    daa8:	ff e0                	jmp    *%eax
    daaa:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    daad:	89 44 24 04          	mov    %eax,0x4(%esp)
    dab1:	c7 04 24 05 00 00 00 	movl   $0x5,(%esp)
    dab8:	e8 03 ff ff ff       	call   d9c0 <add_request>
    dabd:	eb 22                	jmp    dae1 <task_scsi+0x79>
    dabf:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    dac2:	89 44 24 04          	mov    %eax,0x4(%esp)
    dac6:	c7 04 24 0c 28 01 00 	movl   $0x1280c,(%esp)
    dacd:	e8 b5 6f ff ff       	call   4a87 <dump_msg>
    dad2:	c7 04 24 28 28 01 00 	movl   $0x12828,(%esp)
    dad9:	e8 d1 28 00 00       	call   103af <spin>
    dade:	eb 01                	jmp    dae1 <task_scsi+0x79>
    dae0:	90                   	nop
    dae1:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    dae4:	89 44 24 08          	mov    %eax,0x8(%esp)
    dae8:	8b 45 f4             	mov    -0xc(%ebp),%eax
    daeb:	89 44 24 04          	mov    %eax,0x4(%esp)
    daef:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    daf6:	e8 7d 26 00 00       	call   10178 <send_recv>
    dafb:	e9 73 ff ff ff       	jmp    da73 <task_scsi+0xb>

0000db00 <scsi_handler>:
    db00:	55                   	push   %ebp
    db01:	89 e5                	mov    %esp,%ebp
    db03:	5d                   	pop    %ebp
    db04:	c3                   	ret    

0000db05 <do_scsi_request>:
    db05:	55                   	push   %ebp
    db06:	89 e5                	mov    %esp,%ebp
    db08:	5d                   	pop    %ebp
    db09:	c3                   	ret    

0000db0a <init_scsi>:
    db0a:	55                   	push   %ebp
    db0b:	89 e5                	mov    %esp,%ebp
    db0d:	5d                   	pop    %ebp
    db0e:	c3                   	ret    
    db0f:	90                   	nop

0000db10 <init_screen>:
    db10:	55                   	push   %ebp
    db11:	89 e5                	mov    %esp,%ebp
    db13:	53                   	push   %ebx
    db14:	83 ec 44             	sub    $0x44,%esp
    db17:	8b 55 08             	mov    0x8(%ebp),%edx
    db1a:	b8 c0 da 04 00       	mov    $0x4dac0,%eax
    db1f:	89 d1                	mov    %edx,%ecx
    db21:	29 c1                	sub    %eax,%ecx
    db23:	89 c8                	mov    %ecx,%eax
    db25:	d1 f8                	sar    %eax
    db27:	69 c0 8b bd 19 23    	imul   $0x2319bd8b,%eax,%eax
    db2d:	89 45 f0             	mov    %eax,-0x10(%ebp)
    db30:	8b 45 f0             	mov    -0x10(%ebp),%eax
    db33:	6b c0 2a             	imul   $0x2a,%eax,%eax
    db36:	8d 90 e0 0b 05 00    	lea    0x50be0(%eax),%edx
    db3c:	8b 45 08             	mov    0x8(%ebp),%eax
    db3f:	89 90 42 04 00 00    	mov    %edx,0x442(%eax)
    db45:	c7 45 ec 00 40 00 00 	movl   $0x4000,-0x14(%ebp)
    db4c:	8b 4d ec             	mov    -0x14(%ebp),%ecx
    db4f:	ba 56 55 55 55       	mov    $0x55555556,%edx
    db54:	89 c8                	mov    %ecx,%eax
    db56:	f7 ea                	imul   %edx
    db58:	89 c8                	mov    %ecx,%eax
    db5a:	c1 f8 1f             	sar    $0x1f,%eax
    db5d:	89 d1                	mov    %edx,%ecx
    db5f:	29 c1                	sub    %eax,%ecx
    db61:	89 c8                	mov    %ecx,%eax
    db63:	89 45 e8             	mov    %eax,-0x18(%ebp)
    db66:	8b 45 08             	mov    0x8(%ebp),%eax
    db69:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    db6f:	8b 55 f0             	mov    -0x10(%ebp),%edx
    db72:	0f af 55 e8          	imul   -0x18(%ebp),%edx
    db76:	89 50 04             	mov    %edx,0x4(%eax)
    db79:	8b 45 08             	mov    0x8(%ebp),%eax
    db7c:	8b 98 42 04 00 00    	mov    0x442(%eax),%ebx
    db82:	8b 4d e8             	mov    -0x18(%ebp),%ecx
    db85:	ba 67 66 66 66       	mov    $0x66666667,%edx
    db8a:	89 c8                	mov    %ecx,%eax
    db8c:	f7 ea                	imul   %edx
    db8e:	c1 fa 05             	sar    $0x5,%edx
    db91:	89 c8                	mov    %ecx,%eax
    db93:	c1 f8 1f             	sar    $0x1f,%eax
    db96:	29 c2                	sub    %eax,%edx
    db98:	89 d0                	mov    %edx,%eax
    db9a:	c1 e0 02             	shl    $0x2,%eax
    db9d:	01 d0                	add    %edx,%eax
    db9f:	c1 e0 04             	shl    $0x4,%eax
    dba2:	89 43 08             	mov    %eax,0x8(%ebx)
    dba5:	8b 45 08             	mov    0x8(%ebp),%eax
    dba8:	8b 90 42 04 00 00    	mov    0x442(%eax),%edx
    dbae:	8b 45 08             	mov    0x8(%ebp),%eax
    dbb1:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    dbb7:	8b 4d 08             	mov    0x8(%ebp),%ecx
    dbba:	8b 89 42 04 00 00    	mov    0x442(%ecx),%ecx
    dbc0:	8b 49 04             	mov    0x4(%ecx),%ecx
    dbc3:	89 08                	mov    %ecx,(%eax)
    dbc5:	8b 00                	mov    (%eax),%eax
    dbc7:	89 42 0c             	mov    %eax,0xc(%edx)
    dbca:	8b 45 08             	mov    0x8(%ebp),%eax
    dbcd:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    dbd3:	c7 40 26 00 00 00 00 	movl   $0x0,0x26(%eax)
    dbda:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    dbde:	75 27                	jne    dc07 <init_screen+0xf7>
    dbe0:	8b 45 08             	mov    0x8(%ebp),%eax
    dbe3:	8b 90 42 04 00 00    	mov    0x442(%eax),%edx
    dbe9:	a1 68 ed 04 00       	mov    0x4ed68,%eax
    dbee:	89 c1                	mov    %eax,%ecx
    dbf0:	c1 e9 1f             	shr    $0x1f,%ecx
    dbf3:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    dbf6:	d1 f8                	sar    %eax
    dbf8:	89 42 0c             	mov    %eax,0xc(%edx)
    dbfb:	c7 05 68 ed 04 00 00 	movl   $0x0,0x4ed68
    dc02:	00 00 00 
    dc05:	eb 7e                	jmp    dc85 <init_screen+0x175>
    dc07:	c7 45 cb 5b 74 74 79 	movl   $0x7974745b,-0x35(%ebp)
    dc0e:	c7 45 cf 20 23 3f 5d 	movl   $0x5d3f2320,-0x31(%ebp)
    dc15:	c7 45 d3 0a 0a 57 65 	movl   $0x65570a0a,-0x2d(%ebp)
    dc1c:	c7 45 d7 6c 63 6f 6d 	movl   $0x6d6f636c,-0x29(%ebp)
    dc23:	c7 45 db 65 20 74 6f 	movl   $0x6f742065,-0x25(%ebp)
    dc2a:	c7 45 df 20 4c 79 6f 	movl   $0x6f794c20,-0x21(%ebp)
    dc31:	c7 45 e3 73 20 0a 0a 	movl   $0xa0a2073,-0x1d(%ebp)
    dc38:	c6 45 e7 00          	movb   $0x0,-0x19(%ebp)
    dc3c:	8d 45 cb             	lea    -0x35(%ebp),%eax
    dc3f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    dc42:	eb 37                	jmp    dc7b <init_screen+0x16b>
    dc44:	8b 45 f4             	mov    -0xc(%ebp),%eax
    dc47:	0f b6 00             	movzbl (%eax),%eax
    dc4a:	3c 3f                	cmp    $0x3f,%al
    dc4c:	75 0b                	jne    dc59 <init_screen+0x149>
    dc4e:	8b 45 f0             	mov    -0x10(%ebp),%eax
    dc51:	83 c0 30             	add    $0x30,%eax
    dc54:	0f be c0             	movsbl %al,%eax
    dc57:	eb 09                	jmp    dc62 <init_screen+0x152>
    dc59:	8b 45 f4             	mov    -0xc(%ebp),%eax
    dc5c:	0f b6 00             	movzbl (%eax),%eax
    dc5f:	0f be c0             	movsbl %al,%eax
    dc62:	8b 55 08             	mov    0x8(%ebp),%edx
    dc65:	8b 92 42 04 00 00    	mov    0x442(%edx),%edx
    dc6b:	89 44 24 04          	mov    %eax,0x4(%esp)
    dc6f:	89 14 24             	mov    %edx,(%esp)
    dc72:	e8 28 00 00 00       	call   dc9f <out_char>
    dc77:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    dc7b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    dc7e:	0f b6 00             	movzbl (%eax),%eax
    dc81:	84 c0                	test   %al,%al
    dc83:	75 bf                	jne    dc44 <init_screen+0x134>
    dc85:	8b 45 08             	mov    0x8(%ebp),%eax
    dc88:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    dc8e:	8b 40 0c             	mov    0xc(%eax),%eax
    dc91:	89 04 24             	mov    %eax,(%esp)
    dc94:	e8 a9 03 00 00       	call   e042 <set_cursor>
    dc99:	83 c4 44             	add    $0x44,%esp
    dc9c:	5b                   	pop    %ebx
    dc9d:	5d                   	pop    %ebp
    dc9e:	c3                   	ret    

0000dc9f <out_char>:
    dc9f:	55                   	push   %ebp
    dca0:	89 e5                	mov    %esp,%ebp
    dca2:	83 ec 48             	sub    $0x48,%esp
    dca5:	8b 45 0c             	mov    0xc(%ebp),%eax
    dca8:	88 45 e4             	mov    %al,-0x1c(%ebp)
    dcab:	8b 45 08             	mov    0x8(%ebp),%eax
    dcae:	8b 40 0c             	mov    0xc(%eax),%eax
    dcb1:	05 00 c0 05 00       	add    $0x5c000,%eax
    dcb6:	01 c0                	add    %eax,%eax
    dcb8:	89 45 f4             	mov    %eax,-0xc(%ebp)
    dcbb:	8b 45 08             	mov    0x8(%ebp),%eax
    dcbe:	8b 50 0c             	mov    0xc(%eax),%edx
    dcc1:	8b 45 08             	mov    0x8(%ebp),%eax
    dcc4:	8b 40 04             	mov    0x4(%eax),%eax
    dcc7:	29 c2                	sub    %eax,%edx
    dcc9:	8b 45 08             	mov    0x8(%ebp),%eax
    dccc:	8b 40 08             	mov    0x8(%eax),%eax
    dccf:	39 c2                	cmp    %eax,%edx
    dcd1:	72 24                	jb     dcf7 <out_char+0x58>
    dcd3:	c7 44 24 0c 65 00 00 	movl   $0x65,0xc(%esp)
    dcda:	00 
    dcdb:	c7 44 24 08 60 28 01 	movl   $0x12860,0x8(%esp)
    dce2:	00 
    dce3:	c7 44 24 04 60 28 01 	movl   $0x12860,0x4(%esp)
    dcea:	00 
    dceb:	c7 04 24 6c 28 01 00 	movl   $0x1286c,(%esp)
    dcf2:	e8 d3 26 00 00       	call   103ca <assertion_failure>
    dcf7:	8b 45 08             	mov    0x8(%ebp),%eax
    dcfa:	8b 50 0c             	mov    0xc(%eax),%edx
    dcfd:	8b 45 08             	mov    0x8(%ebp),%eax
    dd00:	8b 40 04             	mov    0x4(%eax),%eax
    dd03:	89 d1                	mov    %edx,%ecx
    dd05:	29 c1                	sub    %eax,%ecx
    dd07:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    dd0c:	89 c8                	mov    %ecx,%eax
    dd0e:	f7 e2                	mul    %edx
    dd10:	c1 ea 06             	shr    $0x6,%edx
    dd13:	89 d0                	mov    %edx,%eax
    dd15:	c1 e0 02             	shl    $0x2,%eax
    dd18:	01 d0                	add    %edx,%eax
    dd1a:	c1 e0 04             	shl    $0x4,%eax
    dd1d:	89 ca                	mov    %ecx,%edx
    dd1f:	29 c2                	sub    %eax,%edx
    dd21:	89 55 f0             	mov    %edx,-0x10(%ebp)
    dd24:	8b 45 08             	mov    0x8(%ebp),%eax
    dd27:	8b 50 0c             	mov    0xc(%eax),%edx
    dd2a:	8b 45 08             	mov    0x8(%ebp),%eax
    dd2d:	8b 40 04             	mov    0x4(%eax),%eax
    dd30:	89 d1                	mov    %edx,%ecx
    dd32:	29 c1                	sub    %eax,%ecx
    dd34:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
    dd37:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    dd3c:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    dd3f:	f7 e2                	mul    %edx
    dd41:	89 d0                	mov    %edx,%eax
    dd43:	c1 e8 06             	shr    $0x6,%eax
    dd46:	89 45 ec             	mov    %eax,-0x14(%ebp)
    dd49:	8b 45 08             	mov    0x8(%ebp),%eax
    dd4c:	0f b6 40 10          	movzbl 0x10(%eax),%eax
    dd50:	84 c0                	test   %al,%al
    dd52:	7e 18                	jle    dd6c <out_char+0xcd>
    dd54:	0f be 45 e4          	movsbl -0x1c(%ebp),%eax
    dd58:	89 44 24 04          	mov    %eax,0x4(%esp)
    dd5c:	8b 45 08             	mov    0x8(%ebp),%eax
    dd5f:	89 04 24             	mov    %eax,(%esp)
    dd62:	e8 ad 03 00 00       	call   e114 <parse_escape>
    dd67:	e9 84 02 00 00       	jmp    dff0 <out_char+0x351>
    dd6c:	0f be 45 e4          	movsbl -0x1c(%ebp),%eax
    dd70:	83 e8 07             	sub    $0x7,%eax
    dd73:	83 f8 14             	cmp    $0x14,%eax
    dd76:	0f 87 b7 00 00 00    	ja     de33 <out_char+0x194>
    dd7c:	8b 04 85 94 28 01 00 	mov    0x12894(,%eax,4),%eax
    dd83:	ff e0                	jmp    *%eax
    dd85:	8b 45 08             	mov    0x8(%ebp),%eax
    dd88:	8b 48 04             	mov    0x4(%eax),%ecx
    dd8b:	8b 45 ec             	mov    -0x14(%ebp),%eax
    dd8e:	8d 50 01             	lea    0x1(%eax),%edx
    dd91:	89 d0                	mov    %edx,%eax
    dd93:	c1 e0 02             	shl    $0x2,%eax
    dd96:	01 d0                	add    %edx,%eax
    dd98:	c1 e0 04             	shl    $0x4,%eax
    dd9b:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    dd9e:	8b 45 08             	mov    0x8(%ebp),%eax
    dda1:	89 50 0c             	mov    %edx,0xc(%eax)
    dda4:	e9 b6 00 00 00       	jmp    de5f <out_char+0x1c0>
    dda9:	8b 45 08             	mov    0x8(%ebp),%eax
    ddac:	8b 50 0c             	mov    0xc(%eax),%edx
    ddaf:	8b 45 08             	mov    0x8(%ebp),%eax
    ddb2:	8b 40 04             	mov    0x4(%eax),%eax
    ddb5:	39 c2                	cmp    %eax,%edx
    ddb7:	0f 86 a1 00 00 00    	jbe    de5e <out_char+0x1bf>
    ddbd:	8b 45 08             	mov    0x8(%ebp),%eax
    ddc0:	8b 40 0c             	mov    0xc(%eax),%eax
    ddc3:	8d 50 ff             	lea    -0x1(%eax),%edx
    ddc6:	8b 45 08             	mov    0x8(%ebp),%eax
    ddc9:	89 50 0c             	mov    %edx,0xc(%eax)
    ddcc:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ddcf:	83 e8 02             	sub    $0x2,%eax
    ddd2:	c6 00 20             	movb   $0x20,(%eax)
    ddd5:	8b 45 f4             	mov    -0xc(%ebp),%eax
    ddd8:	83 e8 01             	sub    $0x1,%eax
    dddb:	c6 00 07             	movb   $0x7,(%eax)
    ddde:	eb 7f                	jmp    de5f <out_char+0x1c0>
    dde0:	8b 45 08             	mov    0x8(%ebp),%eax
    dde3:	8b 48 04             	mov    0x4(%eax),%ecx
    dde6:	8b 55 ec             	mov    -0x14(%ebp),%edx
    dde9:	89 d0                	mov    %edx,%eax
    ddeb:	c1 e0 02             	shl    $0x2,%eax
    ddee:	01 d0                	add    %edx,%eax
    ddf0:	c1 e0 04             	shl    $0x4,%eax
    ddf3:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    ddf6:	8b 45 08             	mov    0x8(%ebp),%eax
    ddf9:	89 50 0c             	mov    %edx,0xc(%eax)
    ddfc:	eb 61                	jmp    de5f <out_char+0x1c0>
    ddfe:	8b 45 08             	mov    0x8(%ebp),%eax
    de01:	8b 48 04             	mov    0x4(%eax),%ecx
    de04:	8b 55 ec             	mov    -0x14(%ebp),%edx
    de07:	89 d0                	mov    %edx,%eax
    de09:	c1 e0 02             	shl    $0x2,%eax
    de0c:	01 d0                	add    %edx,%eax
    de0e:	c1 e0 04             	shl    $0x4,%eax
    de11:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    de14:	8b 45 f0             	mov    -0x10(%ebp),%eax
    de17:	83 c0 08             	add    $0x8,%eax
    de1a:	83 e0 f8             	and    $0xfffffff8,%eax
    de1d:	01 c2                	add    %eax,%edx
    de1f:	8b 45 08             	mov    0x8(%ebp),%eax
    de22:	89 50 0c             	mov    %edx,0xc(%eax)
    de25:	eb 38                	jmp    de5f <out_char+0x1c0>
    de27:	8b 45 08             	mov    0x8(%ebp),%eax
    de2a:	c6 40 10 01          	movb   $0x1,0x10(%eax)
    de2e:	e9 bd 01 00 00       	jmp    dff0 <out_char+0x351>
    de33:	0f b6 55 e4          	movzbl -0x1c(%ebp),%edx
    de37:	8b 45 f4             	mov    -0xc(%ebp),%eax
    de3a:	88 10                	mov    %dl,(%eax)
    de3c:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    de40:	8b 45 f4             	mov    -0xc(%ebp),%eax
    de43:	c6 00 07             	movb   $0x7,(%eax)
    de46:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    de4a:	8b 45 08             	mov    0x8(%ebp),%eax
    de4d:	8b 40 0c             	mov    0xc(%eax),%eax
    de50:	8d 50 01             	lea    0x1(%eax),%edx
    de53:	8b 45 08             	mov    0x8(%ebp),%eax
    de56:	89 50 0c             	mov    %edx,0xc(%eax)
    de59:	eb 04                	jmp    de5f <out_char+0x1c0>
    de5b:	90                   	nop
    de5c:	eb 01                	jmp    de5f <out_char+0x1c0>
    de5e:	90                   	nop
    de5f:	8b 45 08             	mov    0x8(%ebp),%eax
    de62:	8b 50 0c             	mov    0xc(%eax),%edx
    de65:	8b 45 08             	mov    0x8(%ebp),%eax
    de68:	8b 40 04             	mov    0x4(%eax),%eax
    de6b:	29 c2                	sub    %eax,%edx
    de6d:	8b 45 08             	mov    0x8(%ebp),%eax
    de70:	8b 40 08             	mov    0x8(%eax),%eax
    de73:	39 c2                	cmp    %eax,%edx
    de75:	0f 82 dd 00 00 00    	jb     df58 <out_char+0x2b9>
    de7b:	8b 45 08             	mov    0x8(%ebp),%eax
    de7e:	8b 50 0c             	mov    0xc(%eax),%edx
    de81:	8b 45 08             	mov    0x8(%ebp),%eax
    de84:	8b 40 04             	mov    0x4(%eax),%eax
    de87:	89 d1                	mov    %edx,%ecx
    de89:	29 c1                	sub    %eax,%ecx
    de8b:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    de90:	89 c8                	mov    %ecx,%eax
    de92:	f7 e2                	mul    %edx
    de94:	c1 ea 06             	shr    $0x6,%edx
    de97:	89 d0                	mov    %edx,%eax
    de99:	c1 e0 02             	shl    $0x2,%eax
    de9c:	01 d0                	add    %edx,%eax
    de9e:	c1 e0 04             	shl    $0x4,%eax
    dea1:	89 ca                	mov    %ecx,%edx
    dea3:	29 c2                	sub    %eax,%edx
    dea5:	89 55 f0             	mov    %edx,-0x10(%ebp)
    dea8:	8b 45 08             	mov    0x8(%ebp),%eax
    deab:	8b 50 0c             	mov    0xc(%eax),%edx
    deae:	8b 45 08             	mov    0x8(%ebp),%eax
    deb1:	8b 40 04             	mov    0x4(%eax),%eax
    deb4:	89 d1                	mov    %edx,%ecx
    deb6:	29 c1                	sub    %eax,%ecx
    deb8:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
    debb:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    dec0:	8b 45 d4             	mov    -0x2c(%ebp),%eax
    dec3:	f7 e2                	mul    %edx
    dec5:	89 d0                	mov    %edx,%eax
    dec7:	c1 e8 06             	shr    $0x6,%eax
    deca:	89 45 ec             	mov    %eax,-0x14(%ebp)
    decd:	8b 45 08             	mov    0x8(%ebp),%eax
    ded0:	8b 48 04             	mov    0x4(%eax),%ecx
    ded3:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ded6:	8d 50 01             	lea    0x1(%eax),%edx
    ded9:	89 d0                	mov    %edx,%eax
    dedb:	c1 e0 02             	shl    $0x2,%eax
    dede:	01 d0                	add    %edx,%eax
    dee0:	c1 e0 04             	shl    $0x4,%eax
    dee3:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    dee6:	2d d0 07 00 00       	sub    $0x7d0,%eax
    deeb:	89 45 e8             	mov    %eax,-0x18(%ebp)
    deee:	8b 55 e8             	mov    -0x18(%ebp),%edx
    def1:	8b 45 08             	mov    0x8(%ebp),%eax
    def4:	8b 40 04             	mov    0x4(%eax),%eax
    def7:	c7 44 24 08 80 07 00 	movl   $0x780,0x8(%esp)
    defe:	00 
    deff:	89 54 24 04          	mov    %edx,0x4(%esp)
    df03:	89 04 24             	mov    %eax,(%esp)
    df06:	e8 65 0b 00 00       	call   ea70 <w_copy>
    df0b:	8b 45 08             	mov    0x8(%ebp),%eax
    df0e:	8b 50 04             	mov    0x4(%eax),%edx
    df11:	8b 45 08             	mov    0x8(%ebp),%eax
    df14:	89 10                	mov    %edx,(%eax)
    df16:	8b 45 08             	mov    0x8(%ebp),%eax
    df19:	8b 50 04             	mov    0x4(%eax),%edx
    df1c:	8b 45 f0             	mov    -0x10(%ebp),%eax
    df1f:	8d 04 02             	lea    (%edx,%eax,1),%eax
    df22:	8d 90 80 07 00 00    	lea    0x780(%eax),%edx
    df28:	8b 45 08             	mov    0x8(%ebp),%eax
    df2b:	89 50 0c             	mov    %edx,0xc(%eax)
    df2e:	8b 45 08             	mov    0x8(%ebp),%eax
    df31:	8b 40 0c             	mov    0xc(%eax),%eax
    df34:	c7 44 24 04 50 00 00 	movl   $0x50,0x4(%esp)
    df3b:	00 
    df3c:	89 04 24             	mov    %eax,(%esp)
    df3f:	e8 ae 00 00 00       	call   dff2 <clear_screen>
    df44:	8b 45 08             	mov    0x8(%ebp),%eax
    df47:	8b 40 26             	mov    0x26(%eax),%eax
    df4a:	85 c0                	test   %eax,%eax
    df4c:	75 0a                	jne    df58 <out_char+0x2b9>
    df4e:	8b 45 08             	mov    0x8(%ebp),%eax
    df51:	c7 40 26 01 00 00 00 	movl   $0x1,0x26(%eax)
    df58:	8b 45 08             	mov    0x8(%ebp),%eax
    df5b:	8b 50 0c             	mov    0xc(%eax),%edx
    df5e:	8b 45 08             	mov    0x8(%ebp),%eax
    df61:	8b 40 04             	mov    0x4(%eax),%eax
    df64:	29 c2                	sub    %eax,%edx
    df66:	8b 45 08             	mov    0x8(%ebp),%eax
    df69:	8b 40 08             	mov    0x8(%eax),%eax
    df6c:	39 c2                	cmp    %eax,%edx
    df6e:	72 51                	jb     dfc1 <out_char+0x322>
    df70:	c7 44 24 0c 9d 00 00 	movl   $0x9d,0xc(%esp)
    df77:	00 
    df78:	c7 44 24 08 60 28 01 	movl   $0x12860,0x8(%esp)
    df7f:	00 
    df80:	c7 44 24 04 60 28 01 	movl   $0x12860,0x4(%esp)
    df87:	00 
    df88:	c7 04 24 6c 28 01 00 	movl   $0x1286c,(%esp)
    df8f:	e8 36 24 00 00       	call   103ca <assertion_failure>
    df94:	eb 2c                	jmp    dfc2 <out_char+0x323>
    df96:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    df9d:	00 
    df9e:	8b 45 08             	mov    0x8(%ebp),%eax
    dfa1:	89 04 24             	mov    %eax,(%esp)
    dfa4:	e8 97 08 00 00       	call   e840 <scroll_screen>
    dfa9:	8b 45 08             	mov    0x8(%ebp),%eax
    dfac:	8b 40 0c             	mov    0xc(%eax),%eax
    dfaf:	c7 44 24 04 50 00 00 	movl   $0x50,0x4(%esp)
    dfb6:	00 
    dfb7:	89 04 24             	mov    %eax,(%esp)
    dfba:	e8 33 00 00 00       	call   dff2 <clear_screen>
    dfbf:	eb 01                	jmp    dfc2 <out_char+0x323>
    dfc1:	90                   	nop
    dfc2:	8b 45 08             	mov    0x8(%ebp),%eax
    dfc5:	8b 50 0c             	mov    0xc(%eax),%edx
    dfc8:	8b 45 08             	mov    0x8(%ebp),%eax
    dfcb:	8b 00                	mov    (%eax),%eax
    dfcd:	05 d0 07 00 00       	add    $0x7d0,%eax
    dfd2:	39 c2                	cmp    %eax,%edx
    dfd4:	73 c0                	jae    df96 <out_char+0x2f7>
    dfd6:	8b 45 08             	mov    0x8(%ebp),%eax
    dfd9:	8b 50 0c             	mov    0xc(%eax),%edx
    dfdc:	8b 45 08             	mov    0x8(%ebp),%eax
    dfdf:	8b 00                	mov    (%eax),%eax
    dfe1:	39 c2                	cmp    %eax,%edx
    dfe3:	72 b1                	jb     df96 <out_char+0x2f7>
    dfe5:	8b 45 08             	mov    0x8(%ebp),%eax
    dfe8:	89 04 24             	mov    %eax,(%esp)
    dfeb:	e8 4e 0a 00 00       	call   ea3e <flush>
    dff0:	c9                   	leave  
    dff1:	c3                   	ret    

0000dff2 <clear_screen>:
    dff2:	55                   	push   %ebp
    dff3:	89 e5                	mov    %esp,%ebp
    dff5:	83 ec 10             	sub    $0x10,%esp
    dff8:	8b 45 08             	mov    0x8(%ebp),%eax
    dffb:	05 00 c0 05 00       	add    $0x5c000,%eax
    e000:	01 c0                	add    %eax,%eax
    e002:	89 45 fc             	mov    %eax,-0x4(%ebp)
    e005:	eb 14                	jmp    e01b <clear_screen+0x29>
    e007:	8b 45 fc             	mov    -0x4(%ebp),%eax
    e00a:	c6 00 20             	movb   $0x20,(%eax)
    e00d:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
    e011:	8b 45 fc             	mov    -0x4(%ebp),%eax
    e014:	c6 00 07             	movb   $0x7,(%eax)
    e017:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
    e01b:	83 6d 0c 01          	subl   $0x1,0xc(%ebp)
    e01f:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
    e023:	79 e2                	jns    e007 <clear_screen+0x15>
    e025:	c9                   	leave  
    e026:	c3                   	ret    

0000e027 <is_current_console>:
    e027:	55                   	push   %ebp
    e028:	89 e5                	mov    %esp,%ebp
    e02a:	a1 a0 da 04 00       	mov    0x4daa0,%eax
    e02f:	6b c0 2a             	imul   $0x2a,%eax,%eax
    e032:	05 e0 0b 05 00       	add    $0x50be0,%eax
    e037:	3b 45 08             	cmp    0x8(%ebp),%eax
    e03a:	0f 94 c0             	sete   %al
    e03d:	0f b6 c0             	movzbl %al,%eax
    e040:	5d                   	pop    %ebp
    e041:	c3                   	ret    

0000e042 <set_cursor>:
    e042:	55                   	push   %ebp
    e043:	89 e5                	mov    %esp,%ebp
    e045:	83 ec 18             	sub    $0x18,%esp
    e048:	e8 c2 6f ff ff       	call   500f <disable_int>
    e04d:	c7 44 24 04 0e 00 00 	movl   $0xe,0x4(%esp)
    e054:	00 
    e055:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    e05c:	e8 1e 6f ff ff       	call   4f7f <out_byte>
    e061:	8b 45 08             	mov    0x8(%ebp),%eax
    e064:	c1 e8 08             	shr    $0x8,%eax
    e067:	0f b6 c0             	movzbl %al,%eax
    e06a:	89 44 24 04          	mov    %eax,0x4(%esp)
    e06e:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    e075:	e8 05 6f ff ff       	call   4f7f <out_byte>
    e07a:	c7 44 24 04 0f 00 00 	movl   $0xf,0x4(%esp)
    e081:	00 
    e082:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    e089:	e8 f1 6e ff ff       	call   4f7f <out_byte>
    e08e:	8b 45 08             	mov    0x8(%ebp),%eax
    e091:	0f b6 c0             	movzbl %al,%eax
    e094:	89 44 24 04          	mov    %eax,0x4(%esp)
    e098:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    e09f:	e8 db 6e ff ff       	call   4f7f <out_byte>
    e0a4:	e8 68 6f ff ff       	call   5011 <enable_int>
    e0a9:	c9                   	leave  
    e0aa:	c3                   	ret    

0000e0ab <set_video_start_addr>:
    e0ab:	55                   	push   %ebp
    e0ac:	89 e5                	mov    %esp,%ebp
    e0ae:	83 ec 18             	sub    $0x18,%esp
    e0b1:	e8 59 6f ff ff       	call   500f <disable_int>
    e0b6:	c7 44 24 04 0c 00 00 	movl   $0xc,0x4(%esp)
    e0bd:	00 
    e0be:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    e0c5:	e8 b5 6e ff ff       	call   4f7f <out_byte>
    e0ca:	8b 45 08             	mov    0x8(%ebp),%eax
    e0cd:	c1 e8 08             	shr    $0x8,%eax
    e0d0:	0f b6 c0             	movzbl %al,%eax
    e0d3:	89 44 24 04          	mov    %eax,0x4(%esp)
    e0d7:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    e0de:	e8 9c 6e ff ff       	call   4f7f <out_byte>
    e0e3:	c7 44 24 04 0d 00 00 	movl   $0xd,0x4(%esp)
    e0ea:	00 
    e0eb:	c7 04 24 d4 03 00 00 	movl   $0x3d4,(%esp)
    e0f2:	e8 88 6e ff ff       	call   4f7f <out_byte>
    e0f7:	8b 45 08             	mov    0x8(%ebp),%eax
    e0fa:	0f b6 c0             	movzbl %al,%eax
    e0fd:	89 44 24 04          	mov    %eax,0x4(%esp)
    e101:	c7 04 24 d5 03 00 00 	movl   $0x3d5,(%esp)
    e108:	e8 72 6e ff ff       	call   4f7f <out_byte>
    e10d:	e8 ff 6e ff ff       	call   5011 <enable_int>
    e112:	c9                   	leave  
    e113:	c3                   	ret    

0000e114 <parse_escape>:
    e114:	55                   	push   %ebp
    e115:	89 e5                	mov    %esp,%ebp
    e117:	83 ec 28             	sub    $0x28,%esp
    e11a:	8b 45 0c             	mov    0xc(%ebp),%eax
    e11d:	88 45 f4             	mov    %al,-0xc(%ebp)
    e120:	8b 45 08             	mov    0x8(%ebp),%eax
    e123:	0f b6 40 10          	movzbl 0x10(%eax),%eax
    e127:	0f be c0             	movsbl %al,%eax
    e12a:	83 f8 01             	cmp    $0x1,%eax
    e12d:	74 0e                	je     e13d <parse_escape+0x29>
    e12f:	83 f8 02             	cmp    $0x2,%eax
    e132:	0f 84 8d 00 00 00    	je     e1c5 <parse_escape+0xb1>
    e138:	e9 0e 01 00 00       	jmp    e24b <parse_escape+0x137>
    e13d:	8b 45 08             	mov    0x8(%ebp),%eax
    e140:	c6 40 11 00          	movb   $0x0,0x11(%eax)
    e144:	8b 45 08             	mov    0x8(%ebp),%eax
    e147:	83 c0 16             	add    $0x16,%eax
    e14a:	8d 50 10             	lea    0x10(%eax),%edx
    e14d:	8b 45 08             	mov    0x8(%ebp),%eax
    e150:	89 50 12             	mov    %edx,0x12(%eax)
    e153:	8b 45 08             	mov    0x8(%ebp),%eax
    e156:	8b 40 12             	mov    0x12(%eax),%eax
    e159:	8d 50 fc             	lea    -0x4(%eax),%edx
    e15c:	8b 45 08             	mov    0x8(%ebp),%eax
    e15f:	89 50 12             	mov    %edx,0x12(%eax)
    e162:	8b 45 08             	mov    0x8(%ebp),%eax
    e165:	8b 40 12             	mov    0x12(%eax),%eax
    e168:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
    e16e:	8b 45 08             	mov    0x8(%ebp),%eax
    e171:	8b 40 12             	mov    0x12(%eax),%eax
    e174:	8b 55 08             	mov    0x8(%ebp),%edx
    e177:	83 c2 16             	add    $0x16,%edx
    e17a:	39 d0                	cmp    %edx,%eax
    e17c:	77 d5                	ja     e153 <parse_escape+0x3f>
    e17e:	0f be 45 f4          	movsbl -0xc(%ebp),%eax
    e182:	83 f8 4d             	cmp    $0x4d,%eax
    e185:	74 18                	je     e19f <parse_escape+0x8b>
    e187:	83 f8 5b             	cmp    $0x5b,%eax
    e18a:	75 28                	jne    e1b4 <parse_escape+0xa0>
    e18c:	8b 45 08             	mov    0x8(%ebp),%eax
    e18f:	0f b6 55 f4          	movzbl -0xc(%ebp),%edx
    e193:	88 50 11             	mov    %dl,0x11(%eax)
    e196:	8b 45 08             	mov    0x8(%ebp),%eax
    e199:	c6 40 10 02          	movb   $0x2,0x10(%eax)
    e19d:	eb 21                	jmp    e1c0 <parse_escape+0xac>
    e19f:	0f be 45 f4          	movsbl -0xc(%ebp),%eax
    e1a3:	89 44 24 04          	mov    %eax,0x4(%esp)
    e1a7:	8b 45 08             	mov    0x8(%ebp),%eax
    e1aa:	89 04 24             	mov    %eax,(%esp)
    e1ad:	e8 9b 00 00 00       	call   e24d <do_escape>
    e1b2:	eb 0c                	jmp    e1c0 <parse_escape+0xac>
    e1b4:	8b 45 08             	mov    0x8(%ebp),%eax
    e1b7:	c6 40 10 00          	movb   $0x0,0x10(%eax)
    e1bb:	e9 8b 00 00 00       	jmp    e24b <parse_escape+0x137>
    e1c0:	e9 86 00 00 00       	jmp    e24b <parse_escape+0x137>
    e1c5:	80 7d f4 2f          	cmpb   $0x2f,-0xc(%ebp)
    e1c9:	7e 3d                	jle    e208 <parse_escape+0xf4>
    e1cb:	80 7d f4 39          	cmpb   $0x39,-0xc(%ebp)
    e1cf:	7f 37                	jg     e208 <parse_escape+0xf4>
    e1d1:	8b 45 08             	mov    0x8(%ebp),%eax
    e1d4:	8b 40 12             	mov    0x12(%eax),%eax
    e1d7:	8b 55 08             	mov    0x8(%ebp),%edx
    e1da:	83 c2 16             	add    $0x16,%edx
    e1dd:	83 c2 10             	add    $0x10,%edx
    e1e0:	39 d0                	cmp    %edx,%eax
    e1e2:	73 63                	jae    e247 <parse_escape+0x133>
    e1e4:	8b 45 08             	mov    0x8(%ebp),%eax
    e1e7:	8b 48 12             	mov    0x12(%eax),%ecx
    e1ea:	8b 45 08             	mov    0x8(%ebp),%eax
    e1ed:	8b 40 12             	mov    0x12(%eax),%eax
    e1f0:	8b 10                	mov    (%eax),%edx
    e1f2:	89 d0                	mov    %edx,%eax
    e1f4:	c1 e0 02             	shl    $0x2,%eax
    e1f7:	01 d0                	add    %edx,%eax
    e1f9:	01 c0                	add    %eax,%eax
    e1fb:	0f be 55 f4          	movsbl -0xc(%ebp),%edx
    e1ff:	83 ea 30             	sub    $0x30,%edx
    e202:	01 d0                	add    %edx,%eax
    e204:	89 01                	mov    %eax,(%ecx)
    e206:	eb 3f                	jmp    e247 <parse_escape+0x133>
    e208:	80 7d f4 3b          	cmpb   $0x3b,-0xc(%ebp)
    e20c:	75 24                	jne    e232 <parse_escape+0x11e>
    e20e:	8b 45 08             	mov    0x8(%ebp),%eax
    e211:	8b 40 12             	mov    0x12(%eax),%eax
    e214:	8b 55 08             	mov    0x8(%ebp),%edx
    e217:	83 c2 16             	add    $0x16,%edx
    e21a:	83 c2 10             	add    $0x10,%edx
    e21d:	39 d0                	cmp    %edx,%eax
    e21f:	73 29                	jae    e24a <parse_escape+0x136>
    e221:	8b 45 08             	mov    0x8(%ebp),%eax
    e224:	8b 40 12             	mov    0x12(%eax),%eax
    e227:	8d 50 04             	lea    0x4(%eax),%edx
    e22a:	8b 45 08             	mov    0x8(%ebp),%eax
    e22d:	89 50 12             	mov    %edx,0x12(%eax)
    e230:	eb 19                	jmp    e24b <parse_escape+0x137>
    e232:	0f be 45 f4          	movsbl -0xc(%ebp),%eax
    e236:	89 44 24 04          	mov    %eax,0x4(%esp)
    e23a:	8b 45 08             	mov    0x8(%ebp),%eax
    e23d:	89 04 24             	mov    %eax,(%esp)
    e240:	e8 08 00 00 00       	call   e24d <do_escape>
    e245:	eb 04                	jmp    e24b <parse_escape+0x137>
    e247:	90                   	nop
    e248:	eb 01                	jmp    e24b <parse_escape+0x137>
    e24a:	90                   	nop
    e24b:	c9                   	leave  
    e24c:	c3                   	ret    

0000e24d <do_escape>:
    e24d:	55                   	push   %ebp
    e24e:	89 e5                	mov    %esp,%ebp
    e250:	83 ec 58             	sub    $0x58,%esp
    e253:	8b 45 0c             	mov    0xc(%ebp),%eax
    e256:	88 45 d4             	mov    %al,-0x2c(%ebp)
    e259:	8b 45 08             	mov    0x8(%ebp),%eax
    e25c:	8b 50 0c             	mov    0xc(%eax),%edx
    e25f:	8b 45 08             	mov    0x8(%ebp),%eax
    e262:	8b 40 04             	mov    0x4(%eax),%eax
    e265:	89 d1                	mov    %edx,%ecx
    e267:	29 c1                	sub    %eax,%ecx
    e269:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    e26e:	89 c8                	mov    %ecx,%eax
    e270:	f7 e2                	mul    %edx
    e272:	c1 ea 06             	shr    $0x6,%edx
    e275:	89 d0                	mov    %edx,%eax
    e277:	c1 e0 02             	shl    $0x2,%eax
    e27a:	01 d0                	add    %edx,%eax
    e27c:	c1 e0 04             	shl    $0x4,%eax
    e27f:	89 ca                	mov    %ecx,%edx
    e281:	29 c2                	sub    %eax,%edx
    e283:	89 55 e8             	mov    %edx,-0x18(%ebp)
    e286:	8b 45 08             	mov    0x8(%ebp),%eax
    e289:	8b 50 0c             	mov    0xc(%eax),%edx
    e28c:	8b 45 08             	mov    0x8(%ebp),%eax
    e28f:	8b 40 04             	mov    0x4(%eax),%eax
    e292:	89 d1                	mov    %edx,%ecx
    e294:	29 c1                	sub    %eax,%ecx
    e296:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
    e299:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    e29e:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    e2a1:	f7 e2                	mul    %edx
    e2a3:	89 d0                	mov    %edx,%eax
    e2a5:	c1 e8 06             	shr    $0x6,%eax
    e2a8:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    e2ab:	8b 45 08             	mov    0x8(%ebp),%eax
    e2ae:	89 04 24             	mov    %eax,(%esp)
    e2b1:	e8 88 07 00 00       	call   ea3e <flush>
    e2b6:	8b 45 08             	mov    0x8(%ebp),%eax
    e2b9:	0f b6 40 11          	movzbl 0x11(%eax),%eax
    e2bd:	84 c0                	test   %al,%al
    e2bf:	75 58                	jne    e319 <do_escape+0xcc>
    e2c1:	0f be 45 d4          	movsbl -0x2c(%ebp),%eax
    e2c5:	83 f8 4d             	cmp    $0x4d,%eax
    e2c8:	0f 85 31 05 00 00    	jne    e7ff <do_escape+0x5b2>
    e2ce:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    e2d2:	75 15                	jne    e2e9 <do_escape+0x9c>
    e2d4:	c7 44 24 04 ff ff ff 	movl   $0xffffffff,0x4(%esp)
    e2db:	ff 
    e2dc:	8b 45 08             	mov    0x8(%ebp),%eax
    e2df:	89 04 24             	mov    %eax,(%esp)
    e2e2:	e8 59 05 00 00       	call   e840 <scroll_screen>
    e2e7:	eb 1f                	jmp    e308 <do_escape+0xbb>
    e2e9:	8b 45 08             	mov    0x8(%ebp),%eax
    e2ec:	8b 48 04             	mov    0x4(%eax),%ecx
    e2ef:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    e2f2:	8d 50 ff             	lea    -0x1(%eax),%edx
    e2f5:	89 d0                	mov    %edx,%eax
    e2f7:	c1 e0 02             	shl    $0x2,%eax
    e2fa:	01 d0                	add    %edx,%eax
    e2fc:	c1 e0 04             	shl    $0x4,%eax
    e2ff:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e302:	8b 45 08             	mov    0x8(%ebp),%eax
    e305:	89 50 0c             	mov    %edx,0xc(%eax)
    e308:	8b 45 08             	mov    0x8(%ebp),%eax
    e30b:	89 04 24             	mov    %eax,(%esp)
    e30e:	e8 2b 07 00 00       	call   ea3e <flush>
    e313:	90                   	nop
    e314:	e9 e7 04 00 00       	jmp    e800 <do_escape+0x5b3>
    e319:	8b 45 08             	mov    0x8(%ebp),%eax
    e31c:	0f b6 40 11          	movzbl 0x11(%eax),%eax
    e320:	3c 5b                	cmp    $0x5b,%al
    e322:	0f 85 d8 04 00 00    	jne    e800 <do_escape+0x5b3>
    e328:	8b 45 08             	mov    0x8(%ebp),%eax
    e32b:	8b 40 16             	mov    0x16(%eax),%eax
    e32e:	89 45 e0             	mov    %eax,-0x20(%ebp)
    e331:	0f be 45 d4          	movsbl -0x2c(%ebp),%eax
    e335:	83 e8 40             	sub    $0x40,%eax
    e338:	83 f8 10             	cmp    $0x10,%eax
    e33b:	0f 87 bf 04 00 00    	ja     e800 <do_escape+0x5b3>
    e341:	8b 04 85 e8 28 01 00 	mov    0x128e8(,%eax,4),%eax
    e348:	ff e0                	jmp    *%eax
    e34a:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    e34e:	74 05                	je     e355 <do_escape+0x108>
    e350:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e353:	eb 05                	jmp    e35a <do_escape+0x10d>
    e355:	b8 01 00 00 00       	mov    $0x1,%eax
    e35a:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e35d:	8b 45 08             	mov    0x8(%ebp),%eax
    e360:	8b 48 04             	mov    0x4(%eax),%ecx
    e363:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e366:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e369:	29 c2                	sub    %eax,%edx
    e36b:	89 d0                	mov    %edx,%eax
    e36d:	c1 e0 02             	shl    $0x2,%eax
    e370:	01 d0                	add    %edx,%eax
    e372:	c1 e0 04             	shl    $0x4,%eax
    e375:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e378:	8b 45 08             	mov    0x8(%ebp),%eax
    e37b:	89 50 0c             	mov    %edx,0xc(%eax)
    e37e:	8b 45 08             	mov    0x8(%ebp),%eax
    e381:	89 04 24             	mov    %eax,(%esp)
    e384:	e8 b5 06 00 00       	call   ea3e <flush>
    e389:	e9 72 04 00 00       	jmp    e800 <do_escape+0x5b3>
    e38e:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    e392:	74 05                	je     e399 <do_escape+0x14c>
    e394:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e397:	eb 05                	jmp    e39e <do_escape+0x151>
    e399:	b8 01 00 00 00       	mov    $0x1,%eax
    e39e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e3a1:	8b 45 08             	mov    0x8(%ebp),%eax
    e3a4:	8b 48 04             	mov    0x4(%eax),%ecx
    e3a7:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e3aa:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e3ad:	01 c2                	add    %eax,%edx
    e3af:	89 d0                	mov    %edx,%eax
    e3b1:	c1 e0 02             	shl    $0x2,%eax
    e3b4:	01 d0                	add    %edx,%eax
    e3b6:	c1 e0 04             	shl    $0x4,%eax
    e3b9:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e3bc:	8b 45 08             	mov    0x8(%ebp),%eax
    e3bf:	89 50 0c             	mov    %edx,0xc(%eax)
    e3c2:	8b 45 08             	mov    0x8(%ebp),%eax
    e3c5:	89 04 24             	mov    %eax,(%esp)
    e3c8:	e8 71 06 00 00       	call   ea3e <flush>
    e3cd:	e9 2e 04 00 00       	jmp    e800 <do_escape+0x5b3>
    e3d2:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    e3d6:	74 05                	je     e3dd <do_escape+0x190>
    e3d8:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e3db:	eb 05                	jmp    e3e2 <do_escape+0x195>
    e3dd:	b8 01 00 00 00       	mov    $0x1,%eax
    e3e2:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e3e5:	8b 45 08             	mov    0x8(%ebp),%eax
    e3e8:	8b 48 04             	mov    0x4(%eax),%ecx
    e3eb:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e3ee:	89 d0                	mov    %edx,%eax
    e3f0:	c1 e0 02             	shl    $0x2,%eax
    e3f3:	01 d0                	add    %edx,%eax
    e3f5:	c1 e0 04             	shl    $0x4,%eax
    e3f8:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e3fb:	8b 45 e8             	mov    -0x18(%ebp),%eax
    e3fe:	01 c2                	add    %eax,%edx
    e400:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e403:	01 c2                	add    %eax,%edx
    e405:	8b 45 08             	mov    0x8(%ebp),%eax
    e408:	89 50 0c             	mov    %edx,0xc(%eax)
    e40b:	8b 45 08             	mov    0x8(%ebp),%eax
    e40e:	89 04 24             	mov    %eax,(%esp)
    e411:	e8 28 06 00 00       	call   ea3e <flush>
    e416:	e9 e5 03 00 00       	jmp    e800 <do_escape+0x5b3>
    e41b:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    e41f:	74 05                	je     e426 <do_escape+0x1d9>
    e421:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e424:	eb 05                	jmp    e42b <do_escape+0x1de>
    e426:	b8 01 00 00 00       	mov    $0x1,%eax
    e42b:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e42e:	8b 45 08             	mov    0x8(%ebp),%eax
    e431:	8b 48 04             	mov    0x4(%eax),%ecx
    e434:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e437:	89 d0                	mov    %edx,%eax
    e439:	c1 e0 02             	shl    $0x2,%eax
    e43c:	01 d0                	add    %edx,%eax
    e43e:	c1 e0 04             	shl    $0x4,%eax
    e441:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e444:	8b 45 e8             	mov    -0x18(%ebp),%eax
    e447:	01 c2                	add    %eax,%edx
    e449:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e44c:	29 c2                	sub    %eax,%edx
    e44e:	8b 45 08             	mov    0x8(%ebp),%eax
    e451:	89 50 0c             	mov    %edx,0xc(%eax)
    e454:	8b 45 08             	mov    0x8(%ebp),%eax
    e457:	89 04 24             	mov    %eax,(%esp)
    e45a:	e8 df 05 00 00       	call   ea3e <flush>
    e45f:	e9 9c 03 00 00       	jmp    e800 <do_escape+0x5b3>
    e464:	8b 45 08             	mov    0x8(%ebp),%eax
    e467:	8b 40 16             	mov    0x16(%eax),%eax
    e46a:	83 e8 01             	sub    $0x1,%eax
    e46d:	89 45 dc             	mov    %eax,-0x24(%ebp)
    e470:	8b 45 08             	mov    0x8(%ebp),%eax
    e473:	8b 40 1a             	mov    0x1a(%eax),%eax
    e476:	83 e8 01             	sub    $0x1,%eax
    e479:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e47c:	8b 45 08             	mov    0x8(%ebp),%eax
    e47f:	8b 48 04             	mov    0x4(%eax),%ecx
    e482:	8b 55 dc             	mov    -0x24(%ebp),%edx
    e485:	89 d0                	mov    %edx,%eax
    e487:	c1 e0 02             	shl    $0x2,%eax
    e48a:	01 d0                	add    %edx,%eax
    e48c:	c1 e0 04             	shl    $0x4,%eax
    e48f:	8d 14 01             	lea    (%ecx,%eax,1),%edx
    e492:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e495:	01 c2                	add    %eax,%edx
    e497:	8b 45 08             	mov    0x8(%ebp),%eax
    e49a:	89 50 0c             	mov    %edx,0xc(%eax)
    e49d:	8b 45 08             	mov    0x8(%ebp),%eax
    e4a0:	89 04 24             	mov    %eax,(%esp)
    e4a3:	e8 96 05 00 00       	call   ea3e <flush>
    e4a8:	e9 53 03 00 00       	jmp    e800 <do_escape+0x5b3>
    e4ad:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e4b0:	83 f8 01             	cmp    $0x1,%eax
    e4b3:	74 2e                	je     e4e3 <do_escape+0x296>
    e4b5:	83 f8 02             	cmp    $0x2,%eax
    e4b8:	74 49                	je     e503 <do_escape+0x2b6>
    e4ba:	85 c0                	test   %eax,%eax
    e4bc:	75 57                	jne    e515 <do_escape+0x2c8>
    e4be:	8b 45 08             	mov    0x8(%ebp),%eax
    e4c1:	8b 50 04             	mov    0x4(%eax),%edx
    e4c4:	8b 45 08             	mov    0x8(%ebp),%eax
    e4c7:	8b 40 0c             	mov    0xc(%eax),%eax
    e4ca:	89 d1                	mov    %edx,%ecx
    e4cc:	29 c1                	sub    %eax,%ecx
    e4ce:	89 c8                	mov    %ecx,%eax
    e4d0:	05 d0 07 00 00       	add    $0x7d0,%eax
    e4d5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e4d8:	8b 45 08             	mov    0x8(%ebp),%eax
    e4db:	8b 40 0c             	mov    0xc(%eax),%eax
    e4de:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e4e1:	eb 42                	jmp    e525 <do_escape+0x2d8>
    e4e3:	8b 45 08             	mov    0x8(%ebp),%eax
    e4e6:	8b 50 0c             	mov    0xc(%eax),%edx
    e4e9:	8b 45 08             	mov    0x8(%ebp),%eax
    e4ec:	8b 40 04             	mov    0x4(%eax),%eax
    e4ef:	89 d1                	mov    %edx,%ecx
    e4f1:	29 c1                	sub    %eax,%ecx
    e4f3:	89 c8                	mov    %ecx,%eax
    e4f5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e4f8:	8b 45 08             	mov    0x8(%ebp),%eax
    e4fb:	8b 40 04             	mov    0x4(%eax),%eax
    e4fe:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e501:	eb 22                	jmp    e525 <do_escape+0x2d8>
    e503:	c7 45 ec d0 07 00 00 	movl   $0x7d0,-0x14(%ebp)
    e50a:	8b 45 08             	mov    0x8(%ebp),%eax
    e50d:	8b 40 04             	mov    0x4(%eax),%eax
    e510:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e513:	eb 10                	jmp    e525 <do_escape+0x2d8>
    e515:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    e51c:	8b 45 08             	mov    0x8(%ebp),%eax
    e51f:	8b 40 04             	mov    0x4(%eax),%eax
    e522:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e525:	8b 55 ec             	mov    -0x14(%ebp),%edx
    e528:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e52b:	89 54 24 04          	mov    %edx,0x4(%esp)
    e52f:	89 04 24             	mov    %eax,(%esp)
    e532:	e8 bb fa ff ff       	call   dff2 <clear_screen>
    e537:	e9 c4 02 00 00       	jmp    e800 <do_escape+0x5b3>
    e53c:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e53f:	83 f8 01             	cmp    $0x1,%eax
    e542:	74 1f                	je     e563 <do_escape+0x316>
    e544:	83 f8 02             	cmp    $0x2,%eax
    e547:	74 34                	je     e57d <do_escape+0x330>
    e549:	85 c0                	test   %eax,%eax
    e54b:	75 4b                	jne    e598 <do_escape+0x34b>
    e54d:	b8 50 00 00 00       	mov    $0x50,%eax
    e552:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e555:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e558:	8b 45 08             	mov    0x8(%ebp),%eax
    e55b:	8b 40 0c             	mov    0xc(%eax),%eax
    e55e:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e561:	eb 45                	jmp    e5a8 <do_escape+0x35b>
    e563:	8b 45 e8             	mov    -0x18(%ebp),%eax
    e566:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e569:	8b 45 08             	mov    0x8(%ebp),%eax
    e56c:	8b 50 0c             	mov    0xc(%eax),%edx
    e56f:	8b 45 e8             	mov    -0x18(%ebp),%eax
    e572:	89 d1                	mov    %edx,%ecx
    e574:	29 c1                	sub    %eax,%ecx
    e576:	89 c8                	mov    %ecx,%eax
    e578:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e57b:	eb 2b                	jmp    e5a8 <do_escape+0x35b>
    e57d:	c7 45 ec 50 00 00 00 	movl   $0x50,-0x14(%ebp)
    e584:	8b 45 08             	mov    0x8(%ebp),%eax
    e587:	8b 50 0c             	mov    0xc(%eax),%edx
    e58a:	8b 45 e8             	mov    -0x18(%ebp),%eax
    e58d:	89 d1                	mov    %edx,%ecx
    e58f:	29 c1                	sub    %eax,%ecx
    e591:	89 c8                	mov    %ecx,%eax
    e593:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e596:	eb 10                	jmp    e5a8 <do_escape+0x35b>
    e598:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    e59f:	8b 45 08             	mov    0x8(%ebp),%eax
    e5a2:	8b 40 0c             	mov    0xc(%eax),%eax
    e5a5:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e5a8:	8b 55 ec             	mov    -0x14(%ebp),%edx
    e5ab:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e5ae:	89 54 24 04          	mov    %edx,0x4(%esp)
    e5b2:	89 04 24             	mov    %eax,(%esp)
    e5b5:	e8 38 fa ff ff       	call   dff2 <clear_screen>
    e5ba:	e9 41 02 00 00       	jmp    e800 <do_escape+0x5b3>
    e5bf:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e5c2:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e5c5:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    e5c9:	7f 07                	jg     e5d2 <do_escape+0x385>
    e5cb:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    e5d2:	b8 19 00 00 00       	mov    $0x19,%eax
    e5d7:	2b 45 e4             	sub    -0x1c(%ebp),%eax
    e5da:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e5dd:	7d 0b                	jge    e5ea <do_escape+0x39d>
    e5df:	b8 19 00 00 00       	mov    $0x19,%eax
    e5e4:	2b 45 e4             	sub    -0x1c(%ebp),%eax
    e5e7:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e5ea:	8b 45 08             	mov    0x8(%ebp),%eax
    e5ed:	8b 48 04             	mov    0x4(%eax),%ecx
    e5f0:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e5f3:	89 d0                	mov    %edx,%eax
    e5f5:	c1 e0 02             	shl    $0x2,%eax
    e5f8:	01 d0                	add    %edx,%eax
    e5fa:	c1 e0 04             	shl    $0x4,%eax
    e5fd:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    e600:	89 45 d8             	mov    %eax,-0x28(%ebp)
    e603:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e606:	89 d0                	mov    %edx,%eax
    e608:	c1 e0 02             	shl    $0x2,%eax
    e60b:	01 d0                	add    %edx,%eax
    e60d:	c1 e0 04             	shl    $0x4,%eax
    e610:	03 45 d8             	add    -0x28(%ebp),%eax
    e613:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e616:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e619:	89 d0                	mov    %edx,%eax
    e61b:	c1 e0 02             	shl    $0x2,%eax
    e61e:	01 d0                	add    %edx,%eax
    e620:	c1 e0 04             	shl    $0x4,%eax
    e623:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e626:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e629:	89 44 24 08          	mov    %eax,0x8(%esp)
    e62d:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e630:	89 44 24 04          	mov    %eax,0x4(%esp)
    e634:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e637:	89 04 24             	mov    %eax,(%esp)
    e63a:	e8 31 04 00 00       	call   ea70 <w_copy>
    e63f:	8b 55 ec             	mov    -0x14(%ebp),%edx
    e642:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e645:	89 54 24 04          	mov    %edx,0x4(%esp)
    e649:	89 04 24             	mov    %eax,(%esp)
    e64c:	e8 a1 f9 ff ff       	call   dff2 <clear_screen>
    e651:	e9 aa 01 00 00       	jmp    e800 <do_escape+0x5b3>
    e656:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e659:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e65c:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    e660:	7f 07                	jg     e669 <do_escape+0x41c>
    e662:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    e669:	b8 19 00 00 00       	mov    $0x19,%eax
    e66e:	2b 45 e4             	sub    -0x1c(%ebp),%eax
    e671:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e674:	7d 0b                	jge    e681 <do_escape+0x434>
    e676:	b8 19 00 00 00       	mov    $0x19,%eax
    e67b:	2b 45 e4             	sub    -0x1c(%ebp),%eax
    e67e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e681:	8b 45 08             	mov    0x8(%ebp),%eax
    e684:	8b 48 04             	mov    0x4(%eax),%ecx
    e687:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    e68a:	89 d0                	mov    %edx,%eax
    e68c:	c1 e0 02             	shl    $0x2,%eax
    e68f:	01 d0                	add    %edx,%eax
    e691:	c1 e0 04             	shl    $0x4,%eax
    e694:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    e697:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e69a:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e69d:	89 d0                	mov    %edx,%eax
    e69f:	c1 e0 02             	shl    $0x2,%eax
    e6a2:	01 d0                	add    %edx,%eax
    e6a4:	c1 e0 04             	shl    $0x4,%eax
    e6a7:	03 45 f0             	add    -0x10(%ebp),%eax
    e6aa:	89 45 d8             	mov    %eax,-0x28(%ebp)
    e6ad:	b8 19 00 00 00       	mov    $0x19,%eax
    e6b2:	2b 45 e4             	sub    -0x1c(%ebp),%eax
    e6b5:	89 c2                	mov    %eax,%edx
    e6b7:	2b 55 f4             	sub    -0xc(%ebp),%edx
    e6ba:	89 d0                	mov    %edx,%eax
    e6bc:	c1 e0 02             	shl    $0x2,%eax
    e6bf:	01 d0                	add    %edx,%eax
    e6c1:	c1 e0 04             	shl    $0x4,%eax
    e6c4:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e6c7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e6ca:	89 44 24 08          	mov    %eax,0x8(%esp)
    e6ce:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e6d1:	89 44 24 04          	mov    %eax,0x4(%esp)
    e6d5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e6d8:	89 04 24             	mov    %eax,(%esp)
    e6db:	e8 90 03 00 00       	call   ea70 <w_copy>
    e6e0:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e6e3:	89 d0                	mov    %edx,%eax
    e6e5:	c1 e0 02             	shl    $0x2,%eax
    e6e8:	01 d0                	add    %edx,%eax
    e6ea:	c1 e0 04             	shl    $0x4,%eax
    e6ed:	89 c2                	mov    %eax,%edx
    e6ef:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e6f2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
    e6f5:	8d 04 01             	lea    (%ecx,%eax,1),%eax
    e6f8:	89 54 24 04          	mov    %edx,0x4(%esp)
    e6fc:	89 04 24             	mov    %eax,(%esp)
    e6ff:	e8 ee f8 ff ff       	call   dff2 <clear_screen>
    e704:	e9 f7 00 00 00       	jmp    e800 <do_escape+0x5b3>
    e709:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e70c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e70f:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    e713:	7f 07                	jg     e71c <do_escape+0x4cf>
    e715:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    e71c:	b8 50 00 00 00       	mov    $0x50,%eax
    e721:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e724:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e727:	7d 0b                	jge    e734 <do_escape+0x4e7>
    e729:	b8 50 00 00 00       	mov    $0x50,%eax
    e72e:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e731:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e734:	8b 45 08             	mov    0x8(%ebp),%eax
    e737:	8b 40 0c             	mov    0xc(%eax),%eax
    e73a:	89 45 d8             	mov    %eax,-0x28(%ebp)
    e73d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e740:	03 45 d8             	add    -0x28(%ebp),%eax
    e743:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e746:	b8 50 00 00 00       	mov    $0x50,%eax
    e74b:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e74e:	2b 45 f4             	sub    -0xc(%ebp),%eax
    e751:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e754:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e757:	89 44 24 08          	mov    %eax,0x8(%esp)
    e75b:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e75e:	89 44 24 04          	mov    %eax,0x4(%esp)
    e762:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e765:	89 04 24             	mov    %eax,(%esp)
    e768:	e8 03 03 00 00       	call   ea70 <w_copy>
    e76d:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e770:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e773:	89 54 24 04          	mov    %edx,0x4(%esp)
    e777:	89 04 24             	mov    %eax,(%esp)
    e77a:	e8 73 f8 ff ff       	call   dff2 <clear_screen>
    e77f:	eb 7f                	jmp    e800 <do_escape+0x5b3>
    e781:	8b 45 e0             	mov    -0x20(%ebp),%eax
    e784:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e787:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
    e78b:	7f 07                	jg     e794 <do_escape+0x547>
    e78d:	c7 45 f4 01 00 00 00 	movl   $0x1,-0xc(%ebp)
    e794:	b8 50 00 00 00       	mov    $0x50,%eax
    e799:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e79c:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e79f:	7d 0b                	jge    e7ac <do_escape+0x55f>
    e7a1:	b8 50 00 00 00       	mov    $0x50,%eax
    e7a6:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e7a9:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e7ac:	8b 45 08             	mov    0x8(%ebp),%eax
    e7af:	8b 40 0c             	mov    0xc(%eax),%eax
    e7b2:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e7b5:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e7b8:	03 45 f0             	add    -0x10(%ebp),%eax
    e7bb:	89 45 d8             	mov    %eax,-0x28(%ebp)
    e7be:	b8 50 00 00 00       	mov    $0x50,%eax
    e7c3:	2b 45 e8             	sub    -0x18(%ebp),%eax
    e7c6:	2b 45 f4             	sub    -0xc(%ebp),%eax
    e7c9:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e7cc:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e7cf:	89 44 24 08          	mov    %eax,0x8(%esp)
    e7d3:	8b 45 d8             	mov    -0x28(%ebp),%eax
    e7d6:	89 44 24 04          	mov    %eax,0x4(%esp)
    e7da:	8b 45 f0             	mov    -0x10(%ebp),%eax
    e7dd:	89 04 24             	mov    %eax,(%esp)
    e7e0:	e8 8b 02 00 00       	call   ea70 <w_copy>
    e7e5:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e7e8:	8b 55 f0             	mov    -0x10(%ebp),%edx
    e7eb:	8d 04 02             	lea    (%edx,%eax,1),%eax
    e7ee:	8b 55 f4             	mov    -0xc(%ebp),%edx
    e7f1:	89 54 24 04          	mov    %edx,0x4(%esp)
    e7f5:	89 04 24             	mov    %eax,(%esp)
    e7f8:	e8 f5 f7 ff ff       	call   dff2 <clear_screen>
    e7fd:	eb 01                	jmp    e800 <do_escape+0x5b3>
    e7ff:	90                   	nop
    e800:	8b 45 08             	mov    0x8(%ebp),%eax
    e803:	c6 40 10 00          	movb   $0x0,0x10(%eax)
    e807:	c9                   	leave  
    e808:	c3                   	ret    

0000e809 <select_console>:
    e809:	55                   	push   %ebp
    e80a:	89 e5                	mov    %esp,%ebp
    e80c:	83 ec 18             	sub    $0x18,%esp
    e80f:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
    e813:	78 25                	js     e83a <select_console+0x31>
    e815:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
    e819:	7f 22                	jg     e83d <select_console+0x34>
    e81b:	8b 45 08             	mov    0x8(%ebp),%eax
    e81e:	a3 a0 da 04 00       	mov    %eax,0x4daa0
    e823:	a1 a0 da 04 00       	mov    0x4daa0,%eax
    e828:	6b c0 2a             	imul   $0x2a,%eax,%eax
    e82b:	05 e0 0b 05 00       	add    $0x50be0,%eax
    e830:	89 04 24             	mov    %eax,(%esp)
    e833:	e8 06 02 00 00       	call   ea3e <flush>
    e838:	eb 04                	jmp    e83e <select_console+0x35>
    e83a:	90                   	nop
    e83b:	eb 01                	jmp    e83e <select_console+0x35>
    e83d:	90                   	nop
    e83e:	c9                   	leave  
    e83f:	c3                   	ret    

0000e840 <scroll_screen>:
    e840:	55                   	push   %ebp
    e841:	89 e5                	mov    %esp,%ebp
    e843:	83 ec 38             	sub    $0x38,%esp
    e846:	8b 45 08             	mov    0x8(%ebp),%eax
    e849:	8b 50 0c             	mov    0xc(%eax),%edx
    e84c:	8b 45 08             	mov    0x8(%ebp),%eax
    e84f:	8b 40 04             	mov    0x4(%eax),%eax
    e852:	89 d1                	mov    %edx,%ecx
    e854:	29 c1                	sub    %eax,%ecx
    e856:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
    e859:	ba cd cc cc cc       	mov    $0xcccccccd,%edx
    e85e:	8b 45 e4             	mov    -0x1c(%ebp),%eax
    e861:	f7 e2                	mul    %edx
    e863:	c1 ea 06             	shr    $0x6,%edx
    e866:	89 d0                	mov    %edx,%eax
    e868:	c1 e0 02             	shl    $0x2,%eax
    e86b:	01 d0                	add    %edx,%eax
    e86d:	c1 e0 04             	shl    $0x4,%eax
    e870:	89 45 f4             	mov    %eax,-0xc(%ebp)
    e873:	8b 45 08             	mov    0x8(%ebp),%eax
    e876:	8b 40 26             	mov    0x26(%eax),%eax
    e879:	85 c0                	test   %eax,%eax
    e87b:	74 17                	je     e894 <scroll_screen+0x54>
    e87d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    e880:	83 c0 50             	add    $0x50,%eax
    e883:	8b 55 08             	mov    0x8(%ebp),%edx
    e886:	8b 4a 08             	mov    0x8(%edx),%ecx
    e889:	ba 00 00 00 00       	mov    $0x0,%edx
    e88e:	f7 f1                	div    %ecx
    e890:	89 d0                	mov    %edx,%eax
    e892:	eb 05                	jmp    e899 <scroll_screen+0x59>
    e894:	b8 00 00 00 00       	mov    $0x0,%eax
    e899:	89 45 f0             	mov    %eax,-0x10(%ebp)
    e89c:	8b 45 08             	mov    0x8(%ebp),%eax
    e89f:	8b 10                	mov    (%eax),%edx
    e8a1:	8b 45 08             	mov    0x8(%ebp),%eax
    e8a4:	8b 40 04             	mov    0x4(%eax),%eax
    e8a7:	89 d1                	mov    %edx,%ecx
    e8a9:	29 c1                	sub    %eax,%ecx
    e8ab:	89 c8                	mov    %ecx,%eax
    e8ad:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e8b0:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
    e8b4:	0f 85 c2 00 00 00    	jne    e97c <scroll_screen+0x13c>
    e8ba:	8b 45 08             	mov    0x8(%ebp),%eax
    e8bd:	8b 40 26             	mov    0x26(%eax),%eax
    e8c0:	85 c0                	test   %eax,%eax
    e8c2:	75 18                	jne    e8dc <scroll_screen+0x9c>
    e8c4:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    e8c8:	7e 12                	jle    e8dc <scroll_screen+0x9c>
    e8ca:	8b 45 08             	mov    0x8(%ebp),%eax
    e8cd:	8b 00                	mov    (%eax),%eax
    e8cf:	8d 50 b0             	lea    -0x50(%eax),%edx
    e8d2:	8b 45 08             	mov    0x8(%ebp),%eax
    e8d5:	89 10                	mov    %edx,(%eax)
    e8d7:	e9 55 01 00 00       	jmp    ea31 <scroll_screen+0x1f1>
    e8dc:	8b 45 08             	mov    0x8(%ebp),%eax
    e8df:	8b 40 26             	mov    0x26(%eax),%eax
    e8e2:	85 c0                	test   %eax,%eax
    e8e4:	0f 84 3a 01 00 00    	je     ea24 <scroll_screen+0x1e4>
    e8ea:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e8ed:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    e8f0:	0f 84 31 01 00 00    	je     ea27 <scroll_screen+0x1e7>
    e8f6:	8b 45 08             	mov    0x8(%ebp),%eax
    e8f9:	8b 50 0c             	mov    0xc(%eax),%edx
    e8fc:	8b 45 08             	mov    0x8(%ebp),%eax
    e8ff:	8b 40 04             	mov    0x4(%eax),%eax
    e902:	29 c2                	sub    %eax,%edx
    e904:	8b 45 08             	mov    0x8(%ebp),%eax
    e907:	8b 40 08             	mov    0x8(%eax),%eax
    e90a:	2d d0 07 00 00       	sub    $0x7d0,%eax
    e90f:	39 c2                	cmp    %eax,%edx
    e911:	72 25                	jb     e938 <scroll_screen+0xf8>
    e913:	8b 45 08             	mov    0x8(%ebp),%eax
    e916:	8b 10                	mov    (%eax),%edx
    e918:	8b 45 08             	mov    0x8(%ebp),%eax
    e91b:	8b 40 04             	mov    0x4(%eax),%eax
    e91e:	39 c2                	cmp    %eax,%edx
    e920:	0f 84 04 01 00 00    	je     ea2a <scroll_screen+0x1ea>
    e926:	8b 45 08             	mov    0x8(%ebp),%eax
    e929:	8b 00                	mov    (%eax),%eax
    e92b:	8d 50 b0             	lea    -0x50(%eax),%edx
    e92e:	8b 45 08             	mov    0x8(%ebp),%eax
    e931:	89 10                	mov    %edx,(%eax)
    e933:	e9 f9 00 00 00       	jmp    ea31 <scroll_screen+0x1f1>
    e938:	8b 45 08             	mov    0x8(%ebp),%eax
    e93b:	8b 10                	mov    (%eax),%edx
    e93d:	8b 45 08             	mov    0x8(%ebp),%eax
    e940:	8b 40 04             	mov    0x4(%eax),%eax
    e943:	39 c2                	cmp    %eax,%edx
    e945:	75 23                	jne    e96a <scroll_screen+0x12a>
    e947:	8b 45 08             	mov    0x8(%ebp),%eax
    e94a:	8b 40 08             	mov    0x8(%eax),%eax
    e94d:	2d d0 07 00 00       	sub    $0x7d0,%eax
    e952:	89 45 ec             	mov    %eax,-0x14(%ebp)
    e955:	8b 45 08             	mov    0x8(%ebp),%eax
    e958:	8b 50 04             	mov    0x4(%eax),%edx
    e95b:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e95e:	01 c2                	add    %eax,%edx
    e960:	8b 45 08             	mov    0x8(%ebp),%eax
    e963:	89 10                	mov    %edx,(%eax)
    e965:	e9 c7 00 00 00       	jmp    ea31 <scroll_screen+0x1f1>
    e96a:	8b 45 08             	mov    0x8(%ebp),%eax
    e96d:	8b 00                	mov    (%eax),%eax
    e96f:	8d 50 b0             	lea    -0x50(%eax),%edx
    e972:	8b 45 08             	mov    0x8(%ebp),%eax
    e975:	89 10                	mov    %edx,(%eax)
    e977:	e9 b5 00 00 00       	jmp    ea31 <scroll_screen+0x1f1>
    e97c:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
    e980:	75 70                	jne    e9f2 <scroll_screen+0x1b2>
    e982:	8b 45 08             	mov    0x8(%ebp),%eax
    e985:	8b 40 26             	mov    0x26(%eax),%eax
    e988:	85 c0                	test   %eax,%eax
    e98a:	75 1f                	jne    e9ab <scroll_screen+0x16b>
    e98c:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e98f:	05 d0 07 00 00       	add    $0x7d0,%eax
    e994:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e997:	7f 12                	jg     e9ab <scroll_screen+0x16b>
    e999:	8b 45 08             	mov    0x8(%ebp),%eax
    e99c:	8b 00                	mov    (%eax),%eax
    e99e:	8d 50 50             	lea    0x50(%eax),%edx
    e9a1:	8b 45 08             	mov    0x8(%ebp),%eax
    e9a4:	89 10                	mov    %edx,(%eax)
    e9a6:	e9 86 00 00 00       	jmp    ea31 <scroll_screen+0x1f1>
    e9ab:	8b 45 08             	mov    0x8(%ebp),%eax
    e9ae:	8b 40 26             	mov    0x26(%eax),%eax
    e9b1:	85 c0                	test   %eax,%eax
    e9b3:	74 78                	je     ea2d <scroll_screen+0x1ed>
    e9b5:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e9b8:	05 80 07 00 00       	add    $0x780,%eax
    e9bd:	3b 45 f4             	cmp    -0xc(%ebp),%eax
    e9c0:	74 6e                	je     ea30 <scroll_screen+0x1f0>
    e9c2:	8b 45 ec             	mov    -0x14(%ebp),%eax
    e9c5:	05 d0 07 00 00       	add    $0x7d0,%eax
    e9ca:	89 c2                	mov    %eax,%edx
    e9cc:	8b 45 08             	mov    0x8(%ebp),%eax
    e9cf:	8b 40 08             	mov    0x8(%eax),%eax
    e9d2:	39 c2                	cmp    %eax,%edx
    e9d4:	75 0d                	jne    e9e3 <scroll_screen+0x1a3>
    e9d6:	8b 45 08             	mov    0x8(%ebp),%eax
    e9d9:	8b 50 04             	mov    0x4(%eax),%edx
    e9dc:	8b 45 08             	mov    0x8(%ebp),%eax
    e9df:	89 10                	mov    %edx,(%eax)
    e9e1:	eb 4e                	jmp    ea31 <scroll_screen+0x1f1>
    e9e3:	8b 45 08             	mov    0x8(%ebp),%eax
    e9e6:	8b 00                	mov    (%eax),%eax
    e9e8:	8d 50 50             	lea    0x50(%eax),%edx
    e9eb:	8b 45 08             	mov    0x8(%ebp),%eax
    e9ee:	89 10                	mov    %edx,(%eax)
    e9f0:	eb 3f                	jmp    ea31 <scroll_screen+0x1f1>
    e9f2:	83 7d 0c ff          	cmpl   $0xffffffff,0xc(%ebp)
    e9f6:	74 39                	je     ea31 <scroll_screen+0x1f1>
    e9f8:	83 7d 0c 01          	cmpl   $0x1,0xc(%ebp)
    e9fc:	74 33                	je     ea31 <scroll_screen+0x1f1>
    e9fe:	c7 44 24 0c fe 01 00 	movl   $0x1fe,0xc(%esp)
    ea05:	00 
    ea06:	c7 44 24 08 60 28 01 	movl   $0x12860,0x8(%esp)
    ea0d:	00 
    ea0e:	c7 44 24 04 60 28 01 	movl   $0x12860,0x4(%esp)
    ea15:	00 
    ea16:	c7 04 24 2c 29 01 00 	movl   $0x1292c,(%esp)
    ea1d:	e8 a8 19 00 00       	call   103ca <assertion_failure>
    ea22:	eb 0d                	jmp    ea31 <scroll_screen+0x1f1>
    ea24:	90                   	nop
    ea25:	eb 0a                	jmp    ea31 <scroll_screen+0x1f1>
    ea27:	90                   	nop
    ea28:	eb 07                	jmp    ea31 <scroll_screen+0x1f1>
    ea2a:	90                   	nop
    ea2b:	eb 04                	jmp    ea31 <scroll_screen+0x1f1>
    ea2d:	90                   	nop
    ea2e:	eb 01                	jmp    ea31 <scroll_screen+0x1f1>
    ea30:	90                   	nop
    ea31:	8b 45 08             	mov    0x8(%ebp),%eax
    ea34:	89 04 24             	mov    %eax,(%esp)
    ea37:	e8 02 00 00 00       	call   ea3e <flush>
    ea3c:	c9                   	leave  
    ea3d:	c3                   	ret    

0000ea3e <flush>:
    ea3e:	55                   	push   %ebp
    ea3f:	89 e5                	mov    %esp,%ebp
    ea41:	83 ec 18             	sub    $0x18,%esp
    ea44:	8b 45 08             	mov    0x8(%ebp),%eax
    ea47:	89 04 24             	mov    %eax,(%esp)
    ea4a:	e8 d8 f5 ff ff       	call   e027 <is_current_console>
    ea4f:	85 c0                	test   %eax,%eax
    ea51:	74 1b                	je     ea6e <flush+0x30>
    ea53:	8b 45 08             	mov    0x8(%ebp),%eax
    ea56:	8b 40 0c             	mov    0xc(%eax),%eax
    ea59:	89 04 24             	mov    %eax,(%esp)
    ea5c:	e8 e1 f5 ff ff       	call   e042 <set_cursor>
    ea61:	8b 45 08             	mov    0x8(%ebp),%eax
    ea64:	8b 00                	mov    (%eax),%eax
    ea66:	89 04 24             	mov    %eax,(%esp)
    ea69:	e8 3d f6 ff ff       	call   e0ab <set_video_start_addr>
    ea6e:	c9                   	leave  
    ea6f:	c3                   	ret    

0000ea70 <w_copy>:
    ea70:	55                   	push   %ebp
    ea71:	89 e5                	mov    %esp,%ebp
    ea73:	83 ec 18             	sub    $0x18,%esp
    ea76:	8b 45 10             	mov    0x10(%ebp),%eax
    ea79:	8d 0c 00             	lea    (%eax,%eax,1),%ecx
    ea7c:	8b 45 0c             	mov    0xc(%ebp),%eax
    ea7f:	01 c0                	add    %eax,%eax
    ea81:	05 00 80 0b 00       	add    $0xb8000,%eax
    ea86:	89 c2                	mov    %eax,%edx
    ea88:	8b 45 08             	mov    0x8(%ebp),%eax
    ea8b:	01 c0                	add    %eax,%eax
    ea8d:	05 00 80 0b 00       	add    $0xb8000,%eax
    ea92:	89 4c 24 08          	mov    %ecx,0x8(%esp)
    ea96:	89 54 24 04          	mov    %edx,0x4(%esp)
    ea9a:	89 04 24             	mov    %eax,(%esp)
    ea9d:	e8 4e 16 00 00       	call   100f0 <memcpy>
    eaa2:	c9                   	leave  
    eaa3:	c3                   	ret    

0000eaa4 <keyboard_handler>:
    eaa4:	55                   	push   %ebp
    eaa5:	89 e5                	mov    %esp,%ebp
    eaa7:	83 ec 28             	sub    $0x28,%esp
    eaaa:	c7 04 24 60 00 00 00 	movl   $0x60,(%esp)
    eab1:	e8 d5 64 ff ff       	call   4f8b <in_byte>
    eab6:	88 45 f7             	mov    %al,-0x9(%ebp)
    eab9:	a1 08 4b 01 00       	mov    0x14b08,%eax
    eabe:	83 f8 1f             	cmp    $0x1f,%eax
    eac1:	7f 3e                	jg     eb01 <keyboard_handler+0x5d>
    eac3:	a1 00 4b 01 00       	mov    0x14b00,%eax
    eac8:	0f b6 55 f7          	movzbl -0x9(%ebp),%edx
    eacc:	88 10                	mov    %dl,(%eax)
    eace:	a1 00 4b 01 00       	mov    0x14b00,%eax
    ead3:	83 c0 01             	add    $0x1,%eax
    ead6:	a3 00 4b 01 00       	mov    %eax,0x14b00
    eadb:	8b 15 00 4b 01 00    	mov    0x14b00,%edx
    eae1:	b8 2c 4b 01 00       	mov    $0x14b2c,%eax
    eae6:	39 c2                	cmp    %eax,%edx
    eae8:	75 0a                	jne    eaf4 <keyboard_handler+0x50>
    eaea:	c7 05 00 4b 01 00 0c 	movl   $0x14b0c,0x14b00
    eaf1:	4b 01 00 
    eaf4:	a1 08 4b 01 00       	mov    0x14b08,%eax
    eaf9:	83 c0 01             	add    $0x1,%eax
    eafc:	a3 08 4b 01 00       	mov    %eax,0x14b08
    eb01:	c7 05 b0 ed 04 00 01 	movl   $0x1,0x4edb0
    eb08:	00 00 00 
    eb0b:	c9                   	leave  
    eb0c:	c3                   	ret    

0000eb0d <init_keyboard>:
    eb0d:	55                   	push   %ebp
    eb0e:	89 e5                	mov    %esp,%ebp
    eb10:	83 ec 18             	sub    $0x18,%esp
    eb13:	c7 05 08 4b 01 00 00 	movl   $0x0,0x14b08
    eb1a:	00 00 00 
    eb1d:	c7 05 04 4b 01 00 0c 	movl   $0x14b0c,0x14b04
    eb24:	4b 01 00 
    eb27:	a1 04 4b 01 00       	mov    0x14b04,%eax
    eb2c:	a3 00 4b 01 00       	mov    %eax,0x14b00
    eb31:	c7 05 34 4b 01 00 00 	movl   $0x0,0x14b34
    eb38:	00 00 00 
    eb3b:	a1 34 4b 01 00       	mov    0x14b34,%eax
    eb40:	a3 30 4b 01 00       	mov    %eax,0x14b30
    eb45:	c7 05 3c 4b 01 00 00 	movl   $0x0,0x14b3c
    eb4c:	00 00 00 
    eb4f:	a1 3c 4b 01 00       	mov    0x14b3c,%eax
    eb54:	a3 38 4b 01 00       	mov    %eax,0x14b38
    eb59:	c7 05 44 4b 01 00 00 	movl   $0x0,0x14b44
    eb60:	00 00 00 
    eb63:	a1 44 4b 01 00       	mov    0x14b44,%eax
    eb68:	a3 40 4b 01 00       	mov    %eax,0x14b40
    eb6d:	c7 05 48 4b 01 00 00 	movl   $0x0,0x14b48
    eb74:	00 00 00 
    eb77:	c7 05 4c 4b 01 00 01 	movl   $0x1,0x14b4c
    eb7e:	00 00 00 
    eb81:	c7 05 50 4b 01 00 00 	movl   $0x0,0x14b50
    eb88:	00 00 00 
    eb8b:	c7 05 54 4b 01 00 00 	movl   $0x0,0x14b54
    eb92:	00 00 00 
    eb95:	e8 86 05 00 00       	call   f120 <set_leds>
    eb9a:	c7 44 24 04 a4 ea 00 	movl   $0xeaa4,0x4(%esp)
    eba1:	00 
    eba2:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    eba9:	e8 0e 36 ff ff       	call   21bc <put_irq_handler>
    ebae:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    ebb5:	e8 36 64 ff ff       	call   4ff0 <enable_irq>
    ebba:	c7 04 24 0c 00 00 00 	movl   $0xc,(%esp)
    ebc1:	e8 2a 64 ff ff       	call   4ff0 <enable_irq>
    ebc6:	c9                   	leave  
    ebc7:	c3                   	ret    

0000ebc8 <keyboard_read>:
    ebc8:	55                   	push   %ebp
    ebc9:	89 e5                	mov    %esp,%ebp
    ebcb:	83 ec 48             	sub    $0x48,%esp
    ebce:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    ebd5:	e9 9a 04 00 00       	jmp    f074 <keyboard_read+0x4ac>
    ebda:	c7 05 2c 4b 01 00 00 	movl   $0x0,0x14b2c
    ebe1:	00 00 00 
    ebe4:	e8 9a 04 00 00       	call   f083 <get_byte_from_kb_buf>
    ebe9:	88 45 f7             	mov    %al,-0x9(%ebp)
    ebec:	80 7d f7 e1          	cmpb   $0xe1,-0x9(%ebp)
    ebf0:	75 63                	jne    ec55 <keyboard_read+0x8d>
    ebf2:	c6 45 d2 e1          	movb   $0xe1,-0x2e(%ebp)
    ebf6:	c6 45 d3 1d          	movb   $0x1d,-0x2d(%ebp)
    ebfa:	c6 45 d4 45          	movb   $0x45,-0x2c(%ebp)
    ebfe:	c6 45 d5 e1          	movb   $0xe1,-0x2b(%ebp)
    ec02:	c6 45 d6 9d          	movb   $0x9d,-0x2a(%ebp)
    ec06:	c6 45 d7 c5          	movb   $0xc5,-0x29(%ebp)
    ec0a:	c7 45 e4 01 00 00 00 	movl   $0x1,-0x1c(%ebp)
    ec11:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
    ec18:	eb 1f                	jmp    ec39 <keyboard_read+0x71>
    ec1a:	e8 64 04 00 00       	call   f083 <get_byte_from_kb_buf>
    ec1f:	8d 55 d2             	lea    -0x2e(%ebp),%edx
    ec22:	03 55 e8             	add    -0x18(%ebp),%edx
    ec25:	0f b6 12             	movzbl (%edx),%edx
    ec28:	38 d0                	cmp    %dl,%al
    ec2a:	74 09                	je     ec35 <keyboard_read+0x6d>
    ec2c:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    ec33:	eb 0a                	jmp    ec3f <keyboard_read+0x77>
    ec35:	83 45 e8 01          	addl   $0x1,-0x18(%ebp)
    ec39:	83 7d e8 05          	cmpl   $0x5,-0x18(%ebp)
    ec3d:	7e db                	jle    ec1a <keyboard_read+0x52>
    ec3f:	83 7d e4 00          	cmpl   $0x0,-0x1c(%ebp)
    ec43:	0f 84 b2 00 00 00    	je     ecfb <keyboard_read+0x133>
    ec49:	c7 45 ec 1e 01 00 00 	movl   $0x11e,-0x14(%ebp)
    ec50:	e9 a6 00 00 00       	jmp    ecfb <keyboard_read+0x133>
    ec55:	80 7d f7 e0          	cmpb   $0xe0,-0x9(%ebp)
    ec59:	0f 85 9c 00 00 00    	jne    ecfb <keyboard_read+0x133>
    ec5f:	c7 05 2c 4b 01 00 01 	movl   $0x1,0x14b2c
    ec66:	00 00 00 
    ec69:	e8 15 04 00 00       	call   f083 <get_byte_from_kb_buf>
    ec6e:	88 45 f7             	mov    %al,-0x9(%ebp)
    ec71:	80 7d f7 2a          	cmpb   $0x2a,-0x9(%ebp)
    ec75:	75 40                	jne    ecb7 <keyboard_read+0xef>
    ec77:	c7 05 2c 4b 01 00 00 	movl   $0x0,0x14b2c
    ec7e:	00 00 00 
    ec81:	e8 fd 03 00 00       	call   f083 <get_byte_from_kb_buf>
    ec86:	88 45 f7             	mov    %al,-0x9(%ebp)
    ec89:	80 7d f7 e0          	cmpb   $0xe0,-0x9(%ebp)
    ec8d:	75 6c                	jne    ecfb <keyboard_read+0x133>
    ec8f:	c7 05 2c 4b 01 00 01 	movl   $0x1,0x14b2c
    ec96:	00 00 00 
    ec99:	e8 e5 03 00 00       	call   f083 <get_byte_from_kb_buf>
    ec9e:	88 45 f7             	mov    %al,-0x9(%ebp)
    eca1:	80 7d f7 37          	cmpb   $0x37,-0x9(%ebp)
    eca5:	75 54                	jne    ecfb <keyboard_read+0x133>
    eca7:	c7 45 ec 1d 01 00 00 	movl   $0x11d,-0x14(%ebp)
    ecae:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
    ecb5:	eb 44                	jmp    ecfb <keyboard_read+0x133>
    ecb7:	80 7d f7 b7          	cmpb   $0xb7,-0x9(%ebp)
    ecbb:	75 3e                	jne    ecfb <keyboard_read+0x133>
    ecbd:	c7 05 2c 4b 01 00 00 	movl   $0x0,0x14b2c
    ecc4:	00 00 00 
    ecc7:	e8 b7 03 00 00       	call   f083 <get_byte_from_kb_buf>
    eccc:	88 45 f7             	mov    %al,-0x9(%ebp)
    eccf:	80 7d f7 e0          	cmpb   $0xe0,-0x9(%ebp)
    ecd3:	75 26                	jne    ecfb <keyboard_read+0x133>
    ecd5:	c7 05 2c 4b 01 00 01 	movl   $0x1,0x14b2c
    ecdc:	00 00 00 
    ecdf:	e8 9f 03 00 00       	call   f083 <get_byte_from_kb_buf>
    ece4:	88 45 f7             	mov    %al,-0x9(%ebp)
    ece7:	80 7d f7 aa          	cmpb   $0xaa,-0x9(%ebp)
    eceb:	75 0e                	jne    ecfb <keyboard_read+0x133>
    eced:	c7 45 ec 1d 01 00 00 	movl   $0x11d,-0x14(%ebp)
    ecf4:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
    ecfb:	81 7d ec 1e 01 00 00 	cmpl   $0x11e,-0x14(%ebp)
    ed02:	0f 84 84 01 00 00    	je     ee8c <keyboard_read+0x2c4>
    ed08:	81 7d ec 1d 01 00 00 	cmpl   $0x11d,-0x14(%ebp)
    ed0f:	0f 84 77 01 00 00    	je     ee8c <keyboard_read+0x2c4>
    ed15:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    ed19:	0f be c0             	movsbl %al,%eax
    ed1c:	f7 d0                	not    %eax
    ed1e:	c1 e8 1f             	shr    $0x1f,%eax
    ed21:	89 45 f0             	mov    %eax,-0x10(%ebp)
    ed24:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    ed28:	89 c2                	mov    %eax,%edx
    ed2a:	83 e2 7f             	and    $0x7f,%edx
    ed2d:	89 d0                	mov    %edx,%eax
    ed2f:	01 c0                	add    %eax,%eax
    ed31:	01 d0                	add    %edx,%eax
    ed33:	c1 e0 02             	shl    $0x2,%eax
    ed36:	05 00 34 01 00       	add    $0x13400,%eax
    ed3b:	89 45 d8             	mov    %eax,-0x28(%ebp)
    ed3e:	c7 05 54 4b 01 00 00 	movl   $0x0,0x14b54
    ed45:	00 00 00 
    ed48:	a1 30 4b 01 00       	mov    0x14b30,%eax
    ed4d:	85 c0                	test   %eax,%eax
    ed4f:	75 09                	jne    ed5a <keyboard_read+0x192>
    ed51:	a1 34 4b 01 00       	mov    0x14b34,%eax
    ed56:	85 c0                	test   %eax,%eax
    ed58:	74 07                	je     ed61 <keyboard_read+0x199>
    ed5a:	b8 01 00 00 00       	mov    $0x1,%eax
    ed5f:	eb 05                	jmp    ed66 <keyboard_read+0x19e>
    ed61:	b8 00 00 00 00       	mov    $0x0,%eax
    ed66:	89 45 e0             	mov    %eax,-0x20(%ebp)
    ed69:	a1 48 4b 01 00       	mov    0x14b48,%eax
    ed6e:	85 c0                	test   %eax,%eax
    ed70:	74 21                	je     ed93 <keyboard_read+0x1cb>
    ed72:	8b 45 d8             	mov    -0x28(%ebp),%eax
    ed75:	8b 00                	mov    (%eax),%eax
    ed77:	83 f8 60             	cmp    $0x60,%eax
    ed7a:	76 17                	jbe    ed93 <keyboard_read+0x1cb>
    ed7c:	8b 45 d8             	mov    -0x28(%ebp),%eax
    ed7f:	8b 00                	mov    (%eax),%eax
    ed81:	83 f8 7a             	cmp    $0x7a,%eax
    ed84:	77 0d                	ja     ed93 <keyboard_read+0x1cb>
    ed86:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    ed8a:	0f 94 c0             	sete   %al
    ed8d:	0f b6 c0             	movzbl %al,%eax
    ed90:	89 45 e0             	mov    %eax,-0x20(%ebp)
    ed93:	83 7d e0 00          	cmpl   $0x0,-0x20(%ebp)
    ed97:	74 0a                	je     eda3 <keyboard_read+0x1db>
    ed99:	c7 05 54 4b 01 00 01 	movl   $0x1,0x14b54
    eda0:	00 00 00 
    eda3:	a1 2c 4b 01 00       	mov    0x14b2c,%eax
    eda8:	85 c0                	test   %eax,%eax
    edaa:	74 0a                	je     edb6 <keyboard_read+0x1ee>
    edac:	c7 05 54 4b 01 00 02 	movl   $0x2,0x14b54
    edb3:	00 00 00 
    edb6:	a1 54 4b 01 00       	mov    0x14b54,%eax
    edbb:	c1 e0 02             	shl    $0x2,%eax
    edbe:	03 45 d8             	add    -0x28(%ebp),%eax
    edc1:	8b 00                	mov    (%eax),%eax
    edc3:	89 45 ec             	mov    %eax,-0x14(%ebp)
    edc6:	8b 45 ec             	mov    -0x14(%ebp),%eax
    edc9:	2d 08 01 00 00       	sub    $0x108,%eax
    edce:	83 f8 08             	cmp    $0x8,%eax
    edd1:	0f 87 ab 00 00 00    	ja     ee82 <keyboard_read+0x2ba>
    edd7:	8b 04 85 4c 29 01 00 	mov    0x1294c(,%eax,4),%eax
    edde:	ff e0                	jmp    *%eax
    ede0:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ede3:	a3 30 4b 01 00       	mov    %eax,0x14b30
    ede8:	e9 9f 00 00 00       	jmp    ee8c <keyboard_read+0x2c4>
    eded:	8b 45 f0             	mov    -0x10(%ebp),%eax
    edf0:	a3 34 4b 01 00       	mov    %eax,0x14b34
    edf5:	e9 92 00 00 00       	jmp    ee8c <keyboard_read+0x2c4>
    edfa:	8b 45 f0             	mov    -0x10(%ebp),%eax
    edfd:	a3 40 4b 01 00       	mov    %eax,0x14b40
    ee02:	e9 85 00 00 00       	jmp    ee8c <keyboard_read+0x2c4>
    ee07:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ee0a:	a3 44 4b 01 00       	mov    %eax,0x14b44
    ee0f:	eb 7b                	jmp    ee8c <keyboard_read+0x2c4>
    ee11:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ee14:	a3 38 4b 01 00       	mov    %eax,0x14b38
    ee19:	eb 71                	jmp    ee8c <keyboard_read+0x2c4>
    ee1b:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ee1e:	a3 38 4b 01 00       	mov    %eax,0x14b38
    ee23:	eb 67                	jmp    ee8c <keyboard_read+0x2c4>
    ee25:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    ee29:	74 5a                	je     ee85 <keyboard_read+0x2bd>
    ee2b:	a1 48 4b 01 00       	mov    0x14b48,%eax
    ee30:	85 c0                	test   %eax,%eax
    ee32:	0f 94 c0             	sete   %al
    ee35:	0f b6 c0             	movzbl %al,%eax
    ee38:	a3 48 4b 01 00       	mov    %eax,0x14b48
    ee3d:	e8 de 02 00 00       	call   f120 <set_leds>
    ee42:	eb 48                	jmp    ee8c <keyboard_read+0x2c4>
    ee44:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    ee48:	74 3e                	je     ee88 <keyboard_read+0x2c0>
    ee4a:	a1 4c 4b 01 00       	mov    0x14b4c,%eax
    ee4f:	85 c0                	test   %eax,%eax
    ee51:	0f 94 c0             	sete   %al
    ee54:	0f b6 c0             	movzbl %al,%eax
    ee57:	a3 4c 4b 01 00       	mov    %eax,0x14b4c
    ee5c:	e8 bf 02 00 00       	call   f120 <set_leds>
    ee61:	eb 29                	jmp    ee8c <keyboard_read+0x2c4>
    ee63:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    ee67:	74 22                	je     ee8b <keyboard_read+0x2c3>
    ee69:	a1 50 4b 01 00       	mov    0x14b50,%eax
    ee6e:	85 c0                	test   %eax,%eax
    ee70:	0f 94 c0             	sete   %al
    ee73:	0f b6 c0             	movzbl %al,%eax
    ee76:	a3 50 4b 01 00       	mov    %eax,0x14b50
    ee7b:	e8 a0 02 00 00       	call   f120 <set_leds>
    ee80:	eb 0a                	jmp    ee8c <keyboard_read+0x2c4>
    ee82:	90                   	nop
    ee83:	eb 07                	jmp    ee8c <keyboard_read+0x2c4>
    ee85:	90                   	nop
    ee86:	eb 04                	jmp    ee8c <keyboard_read+0x2c4>
    ee88:	90                   	nop
    ee89:	eb 01                	jmp    ee8c <keyboard_read+0x2c4>
    ee8b:	90                   	nop
    ee8c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    ee90:	0f 84 de 01 00 00    	je     f074 <keyboard_read+0x4ac>
    ee96:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
    ee9d:	81 7d ec 2b 01 00 00 	cmpl   $0x12b,-0x14(%ebp)
    eea4:	0f 86 13 01 00 00    	jbe    efbd <keyboard_read+0x3f5>
    eeaa:	81 7d ec 3b 01 00 00 	cmpl   $0x13b,-0x14(%ebp)
    eeb1:	0f 87 06 01 00 00    	ja     efbd <keyboard_read+0x3f5>
    eeb7:	c7 45 dc 01 00 00 00 	movl   $0x1,-0x24(%ebp)
    eebe:	8b 45 ec             	mov    -0x14(%ebp),%eax
    eec1:	2d 2c 01 00 00       	sub    $0x12c,%eax
    eec6:	83 f8 04             	cmp    $0x4,%eax
    eec9:	77 45                	ja     ef10 <keyboard_read+0x348>
    eecb:	8b 04 85 70 29 01 00 	mov    0x12970(,%eax,4),%eax
    eed2:	ff e0                	jmp    *%eax
    eed4:	c7 45 ec 2f 00 00 00 	movl   $0x2f,-0x14(%ebp)
    eedb:	e9 dd 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    eee0:	c7 45 ec 2a 00 00 00 	movl   $0x2a,-0x14(%ebp)
    eee7:	e9 d1 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    eeec:	c7 45 ec 2d 00 00 00 	movl   $0x2d,-0x14(%ebp)
    eef3:	e9 c5 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    eef8:	c7 45 ec 2b 00 00 00 	movl   $0x2b,-0x14(%ebp)
    eeff:	e9 b9 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    ef04:	c7 45 ec 03 01 00 00 	movl   $0x103,-0x14(%ebp)
    ef0b:	e9 ad 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    ef10:	a1 4c 4b 01 00       	mov    0x14b4c,%eax
    ef15:	85 c0                	test   %eax,%eax
    ef17:	74 30                	je     ef49 <keyboard_read+0x381>
    ef19:	81 7d ec 31 01 00 00 	cmpl   $0x131,-0x14(%ebp)
    ef20:	76 15                	jbe    ef37 <keyboard_read+0x36f>
    ef22:	81 7d ec 3b 01 00 00 	cmpl   $0x13b,-0x14(%ebp)
    ef29:	77 0c                	ja     ef37 <keyboard_read+0x36f>
    ef2b:	81 6d ec 02 01 00 00 	subl   $0x102,-0x14(%ebp)
    ef32:	e9 86 00 00 00       	jmp    efbd <keyboard_read+0x3f5>
    ef37:	81 7d ec 31 01 00 00 	cmpl   $0x131,-0x14(%ebp)
    ef3e:	75 7c                	jne    efbc <keyboard_read+0x3f4>
    ef40:	c7 45 ec 2e 00 00 00 	movl   $0x2e,-0x14(%ebp)
    ef47:	eb 74                	jmp    efbd <keyboard_read+0x3f5>
    ef49:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ef4c:	2d 31 01 00 00       	sub    $0x131,%eax
    ef51:	83 f8 0a             	cmp    $0xa,%eax
    ef54:	77 63                	ja     efb9 <keyboard_read+0x3f1>
    ef56:	8b 04 85 84 29 01 00 	mov    0x12984(,%eax,4),%eax
    ef5d:	ff e0                	jmp    *%eax
    ef5f:	c7 45 ec 21 01 00 00 	movl   $0x121,-0x14(%ebp)
    ef66:	eb 52                	jmp    efba <keyboard_read+0x3f2>
    ef68:	c7 45 ec 22 01 00 00 	movl   $0x122,-0x14(%ebp)
    ef6f:	eb 49                	jmp    efba <keyboard_read+0x3f2>
    ef71:	c7 45 ec 23 01 00 00 	movl   $0x123,-0x14(%ebp)
    ef78:	eb 40                	jmp    efba <keyboard_read+0x3f2>
    ef7a:	c7 45 ec 24 01 00 00 	movl   $0x124,-0x14(%ebp)
    ef81:	eb 37                	jmp    efba <keyboard_read+0x3f2>
    ef83:	c7 45 ec 1f 01 00 00 	movl   $0x11f,-0x14(%ebp)
    ef8a:	eb 2e                	jmp    efba <keyboard_read+0x3f2>
    ef8c:	c7 45 ec 25 01 00 00 	movl   $0x125,-0x14(%ebp)
    ef93:	eb 25                	jmp    efba <keyboard_read+0x3f2>
    ef95:	c7 45 ec 26 01 00 00 	movl   $0x126,-0x14(%ebp)
    ef9c:	eb 1c                	jmp    efba <keyboard_read+0x3f2>
    ef9e:	c7 45 ec 27 01 00 00 	movl   $0x127,-0x14(%ebp)
    efa5:	eb 13                	jmp    efba <keyboard_read+0x3f2>
    efa7:	c7 45 ec 28 01 00 00 	movl   $0x128,-0x14(%ebp)
    efae:	eb 0a                	jmp    efba <keyboard_read+0x3f2>
    efb0:	c7 45 ec 20 01 00 00 	movl   $0x120,-0x14(%ebp)
    efb7:	eb 01                	jmp    efba <keyboard_read+0x3f2>
    efb9:	90                   	nop
    efba:	eb 01                	jmp    efbd <keyboard_read+0x3f5>
    efbc:	90                   	nop
    efbd:	a1 30 4b 01 00       	mov    0x14b30,%eax
    efc2:	85 c0                	test   %eax,%eax
    efc4:	74 07                	je     efcd <keyboard_read+0x405>
    efc6:	b8 00 02 00 00       	mov    $0x200,%eax
    efcb:	eb 05                	jmp    efd2 <keyboard_read+0x40a>
    efcd:	b8 00 00 00 00       	mov    $0x0,%eax
    efd2:	09 45 ec             	or     %eax,-0x14(%ebp)
    efd5:	a1 34 4b 01 00       	mov    0x14b34,%eax
    efda:	85 c0                	test   %eax,%eax
    efdc:	74 07                	je     efe5 <keyboard_read+0x41d>
    efde:	b8 00 04 00 00       	mov    $0x400,%eax
    efe3:	eb 05                	jmp    efea <keyboard_read+0x422>
    efe5:	b8 00 00 00 00       	mov    $0x0,%eax
    efea:	09 45 ec             	or     %eax,-0x14(%ebp)
    efed:	a1 40 4b 01 00       	mov    0x14b40,%eax
    eff2:	85 c0                	test   %eax,%eax
    eff4:	74 07                	je     effd <keyboard_read+0x435>
    eff6:	b8 00 08 00 00       	mov    $0x800,%eax
    effb:	eb 05                	jmp    f002 <keyboard_read+0x43a>
    effd:	b8 00 00 00 00       	mov    $0x0,%eax
    f002:	09 45 ec             	or     %eax,-0x14(%ebp)
    f005:	a1 44 4b 01 00       	mov    0x14b44,%eax
    f00a:	85 c0                	test   %eax,%eax
    f00c:	74 07                	je     f015 <keyboard_read+0x44d>
    f00e:	b8 00 10 00 00       	mov    $0x1000,%eax
    f013:	eb 05                	jmp    f01a <keyboard_read+0x452>
    f015:	b8 00 00 00 00       	mov    $0x0,%eax
    f01a:	09 45 ec             	or     %eax,-0x14(%ebp)
    f01d:	a1 38 4b 01 00       	mov    0x14b38,%eax
    f022:	85 c0                	test   %eax,%eax
    f024:	74 07                	je     f02d <keyboard_read+0x465>
    f026:	b8 00 20 00 00       	mov    $0x2000,%eax
    f02b:	eb 05                	jmp    f032 <keyboard_read+0x46a>
    f02d:	b8 00 00 00 00       	mov    $0x0,%eax
    f032:	09 45 ec             	or     %eax,-0x14(%ebp)
    f035:	a1 3c 4b 01 00       	mov    0x14b3c,%eax
    f03a:	85 c0                	test   %eax,%eax
    f03c:	74 07                	je     f045 <keyboard_read+0x47d>
    f03e:	b8 00 40 00 00       	mov    $0x4000,%eax
    f043:	eb 05                	jmp    f04a <keyboard_read+0x482>
    f045:	b8 00 00 00 00       	mov    $0x0,%eax
    f04a:	09 45 ec             	or     %eax,-0x14(%ebp)
    f04d:	83 7d dc 00          	cmpl   $0x0,-0x24(%ebp)
    f051:	74 07                	je     f05a <keyboard_read+0x492>
    f053:	b8 00 80 00 00       	mov    $0x8000,%eax
    f058:	eb 05                	jmp    f05f <keyboard_read+0x497>
    f05a:	b8 00 00 00 00       	mov    $0x0,%eax
    f05f:	09 45 ec             	or     %eax,-0x14(%ebp)
    f062:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f065:	89 44 24 04          	mov    %eax,0x4(%esp)
    f069:	8b 45 08             	mov    0x8(%ebp),%eax
    f06c:	89 04 24             	mov    %eax,(%esp)
    f06f:	e8 c7 02 00 00       	call   f33b <in_process>
    f074:	a1 08 4b 01 00       	mov    0x14b08,%eax
    f079:	85 c0                	test   %eax,%eax
    f07b:	0f 8f 59 fb ff ff    	jg     ebda <keyboard_read+0x12>
    f081:	c9                   	leave  
    f082:	c3                   	ret    

0000f083 <get_byte_from_kb_buf>:
    f083:	55                   	push   %ebp
    f084:	89 e5                	mov    %esp,%ebp
    f086:	83 ec 18             	sub    $0x18,%esp
    f089:	90                   	nop
    f08a:	a1 08 4b 01 00       	mov    0x14b08,%eax
    f08f:	85 c0                	test   %eax,%eax
    f091:	7e f7                	jle    f08a <get_byte_from_kb_buf+0x7>
    f093:	e8 77 5f ff ff       	call   500f <disable_int>
    f098:	a1 04 4b 01 00       	mov    0x14b04,%eax
    f09d:	0f b6 00             	movzbl (%eax),%eax
    f0a0:	88 45 f7             	mov    %al,-0x9(%ebp)
    f0a3:	a1 04 4b 01 00       	mov    0x14b04,%eax
    f0a8:	83 c0 01             	add    $0x1,%eax
    f0ab:	a3 04 4b 01 00       	mov    %eax,0x14b04
    f0b0:	8b 15 04 4b 01 00    	mov    0x14b04,%edx
    f0b6:	b8 2c 4b 01 00       	mov    $0x14b2c,%eax
    f0bb:	39 c2                	cmp    %eax,%edx
    f0bd:	75 0a                	jne    f0c9 <get_byte_from_kb_buf+0x46>
    f0bf:	c7 05 04 4b 01 00 0c 	movl   $0x14b0c,0x14b04
    f0c6:	4b 01 00 
    f0c9:	a1 08 4b 01 00       	mov    0x14b08,%eax
    f0ce:	83 e8 01             	sub    $0x1,%eax
    f0d1:	a3 08 4b 01 00       	mov    %eax,0x14b08
    f0d6:	e8 36 5f ff ff       	call   5011 <enable_int>
    f0db:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    f0df:	c9                   	leave  
    f0e0:	c3                   	ret    

0000f0e1 <kb_wait>:
    f0e1:	55                   	push   %ebp
    f0e2:	89 e5                	mov    %esp,%ebp
    f0e4:	83 ec 28             	sub    $0x28,%esp
    f0e7:	c7 04 24 64 00 00 00 	movl   $0x64,(%esp)
    f0ee:	e8 98 5e ff ff       	call   4f8b <in_byte>
    f0f3:	88 45 f7             	mov    %al,-0x9(%ebp)
    f0f6:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    f0fa:	83 e0 02             	and    $0x2,%eax
    f0fd:	85 c0                	test   %eax,%eax
    f0ff:	75 e6                	jne    f0e7 <kb_wait+0x6>
    f101:	c9                   	leave  
    f102:	c3                   	ret    

0000f103 <kb_ack>:
    f103:	55                   	push   %ebp
    f104:	89 e5                	mov    %esp,%ebp
    f106:	83 ec 28             	sub    $0x28,%esp
    f109:	c7 04 24 60 00 00 00 	movl   $0x60,(%esp)
    f110:	e8 76 5e ff ff       	call   4f8b <in_byte>
    f115:	88 45 f7             	mov    %al,-0x9(%ebp)
    f118:	80 7d f7 fa          	cmpb   $0xfa,-0x9(%ebp)
    f11c:	75 eb                	jne    f109 <kb_ack+0x6>
    f11e:	c9                   	leave  
    f11f:	c3                   	ret    

0000f120 <set_leds>:
    f120:	55                   	push   %ebp
    f121:	89 e5                	mov    %esp,%ebp
    f123:	83 ec 28             	sub    $0x28,%esp
    f126:	a1 48 4b 01 00       	mov    0x14b48,%eax
    f12b:	c1 e0 02             	shl    $0x2,%eax
    f12e:	89 c2                	mov    %eax,%edx
    f130:	a1 4c 4b 01 00       	mov    0x14b4c,%eax
    f135:	01 c0                	add    %eax,%eax
    f137:	09 c2                	or     %eax,%edx
    f139:	a1 50 4b 01 00       	mov    0x14b50,%eax
    f13e:	09 d0                	or     %edx,%eax
    f140:	88 45 f7             	mov    %al,-0x9(%ebp)
    f143:	e8 99 ff ff ff       	call   f0e1 <kb_wait>
    f148:	c7 44 24 04 ed 00 00 	movl   $0xed,0x4(%esp)
    f14f:	00 
    f150:	c7 04 24 60 00 00 00 	movl   $0x60,(%esp)
    f157:	e8 23 5e ff ff       	call   4f7f <out_byte>
    f15c:	e8 a2 ff ff ff       	call   f103 <kb_ack>
    f161:	e8 7b ff ff ff       	call   f0e1 <kb_wait>
    f166:	0f b6 45 f7          	movzbl -0x9(%ebp),%eax
    f16a:	89 44 24 04          	mov    %eax,0x4(%esp)
    f16e:	c7 04 24 60 00 00 00 	movl   $0x60,(%esp)
    f175:	e8 05 5e ff ff       	call   4f7f <out_byte>
    f17a:	e8 84 ff ff ff       	call   f103 <kb_ack>
    f17f:	c9                   	leave  
    f180:	c3                   	ret    
    f181:	90                   	nop
    f182:	90                   	nop
    f183:	90                   	nop

0000f184 <task_tty>:
    f184:	55                   	push   %ebp
    f185:	89 e5                	mov    %esp,%ebp
    f187:	83 ec 58             	sub    $0x58,%esp
    f18a:	e8 7e f9 ff ff       	call   eb0d <init_keyboard>
    f18f:	c7 45 f4 c0 da 04 00 	movl   $0x4dac0,-0xc(%ebp)
    f196:	eb 12                	jmp    f1aa <task_tty+0x26>
    f198:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f19b:	89 04 24             	mov    %eax,(%esp)
    f19e:	e8 57 01 00 00       	call   f2fa <init_tty>
    f1a3:	81 45 f4 46 04 00 00 	addl   $0x446,-0xc(%ebp)
    f1aa:	81 7d f4 92 e7 04 00 	cmpl   $0x4e792,-0xc(%ebp)
    f1b1:	72 e5                	jb     f198 <task_tty+0x14>
    f1b3:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    f1ba:	e8 4a f6 ff ff       	call   e809 <select_console>
    f1bf:	c7 45 f4 c0 da 04 00 	movl   $0x4dac0,-0xc(%ebp)
    f1c6:	eb 2a                	jmp    f1f2 <task_tty+0x6e>
    f1c8:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f1cb:	89 04 24             	mov    %eax,(%esp)
    f1ce:	e8 12 03 00 00       	call   f4e5 <tty_dev_read>
    f1d3:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f1d6:	89 04 24             	mov    %eax,(%esp)
    f1d9:	e8 2f 03 00 00       	call   f50d <tty_dev_write>
    f1de:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f1e1:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    f1e7:	85 c0                	test   %eax,%eax
    f1e9:	75 dd                	jne    f1c8 <task_tty+0x44>
    f1eb:	81 45 f4 46 04 00 00 	addl   $0x446,-0xc(%ebp)
    f1f2:	81 7d f4 92 e7 04 00 	cmpl   $0x4e792,-0xc(%ebp)
    f1f9:	72 cd                	jb     f1c8 <task_tty+0x44>
    f1fb:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f1fe:	89 44 24 08          	mov    %eax,0x8(%esp)
    f202:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    f209:	00 
    f20a:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    f211:	e8 62 0f 00 00       	call   10178 <send_recv>
    f216:	8b 45 bc             	mov    -0x44(%ebp),%eax
    f219:	89 45 f0             	mov    %eax,-0x10(%ebp)
    f21c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    f220:	75 24                	jne    f246 <task_tty+0xc2>
    f222:	c7 44 24 0c 49 00 00 	movl   $0x49,0xc(%esp)
    f229:	00 
    f22a:	c7 44 24 08 b0 29 01 	movl   $0x129b0,0x8(%esp)
    f231:	00 
    f232:	c7 44 24 04 b0 29 01 	movl   $0x129b0,0x4(%esp)
    f239:	00 
    f23a:	c7 04 24 b6 29 01 00 	movl   $0x129b6,(%esp)
    f241:	e8 84 11 00 00       	call   103ca <assertion_failure>
    f246:	8b 45 d0             	mov    -0x30(%ebp),%eax
    f249:	69 c0 46 04 00 00    	imul   $0x446,%eax,%eax
    f24f:	05 c0 da 04 00       	add    $0x4dac0,%eax
    f254:	89 45 ec             	mov    %eax,-0x14(%ebp)
    f257:	8b 45 c0             	mov    -0x40(%ebp),%eax
    f25a:	3d d1 07 00 00       	cmp    $0x7d1,%eax
    f25f:	74 1e                	je     f27f <task_tty+0xfb>
    f261:	3d d1 07 00 00       	cmp    $0x7d1,%eax
    f266:	7f 07                	jg     f26f <task_tty+0xeb>
    f268:	83 f8 01             	cmp    $0x1,%eax
    f26b:	74 68                	je     f2d5 <task_tty+0x151>
    f26d:	eb 72                	jmp    f2e1 <task_tty+0x15d>
    f26f:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    f274:	74 37                	je     f2ad <task_tty+0x129>
    f276:	3d d4 07 00 00       	cmp    $0x7d4,%eax
    f27b:	74 44                	je     f2c1 <task_tty+0x13d>
    f27d:	eb 62                	jmp    f2e1 <task_tty+0x15d>
    f27f:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f282:	89 04 24             	mov    %eax,(%esp)
    f285:	e8 b8 42 ff ff       	call   3542 <reset_msg>
    f28a:	c7 45 c0 2d 00 00 00 	movl   $0x2d,-0x40(%ebp)
    f291:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f294:	89 44 24 08          	mov    %eax,0x8(%esp)
    f298:	8b 45 f0             	mov    -0x10(%ebp),%eax
    f29b:	89 44 24 04          	mov    %eax,0x4(%esp)
    f29f:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    f2a6:	e8 cd 0e 00 00       	call   10178 <send_recv>
    f2ab:	eb 48                	jmp    f2f5 <task_tty+0x171>
    f2ad:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f2b0:	89 44 24 04          	mov    %eax,0x4(%esp)
    f2b4:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f2b7:	89 04 24             	mov    %eax,(%esp)
    f2ba:	e8 54 04 00 00       	call   f713 <tty_do_read>
    f2bf:	eb 34                	jmp    f2f5 <task_tty+0x171>
    f2c1:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f2c4:	89 44 24 04          	mov    %eax,0x4(%esp)
    f2c8:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f2cb:	89 04 24             	mov    %eax,(%esp)
    f2ce:	e8 de 04 00 00       	call   f7b1 <tty_do_write>
    f2d3:	eb 20                	jmp    f2f5 <task_tty+0x171>
    f2d5:	c7 05 b0 ed 04 00 00 	movl   $0x0,0x4edb0
    f2dc:	00 00 00 
    f2df:	eb 14                	jmp    f2f5 <task_tty+0x171>
    f2e1:	8d 45 bc             	lea    -0x44(%ebp),%eax
    f2e4:	89 44 24 04          	mov    %eax,0x4(%esp)
    f2e8:	c7 04 24 c6 29 01 00 	movl   $0x129c6,(%esp)
    f2ef:	e8 93 57 ff ff       	call   4a87 <dump_msg>
    f2f4:	90                   	nop
    f2f5:	e9 c5 fe ff ff       	jmp    f1bf <task_tty+0x3b>

0000f2fa <init_tty>:
    f2fa:	55                   	push   %ebp
    f2fb:	89 e5                	mov    %esp,%ebp
    f2fd:	83 ec 18             	sub    $0x18,%esp
    f300:	8b 45 08             	mov    0x8(%ebp),%eax
    f303:	c7 80 2a 04 00 00 00 	movl   $0x0,0x42a(%eax)
    f30a:	00 00 00 
    f30d:	8b 45 08             	mov    0x8(%ebp),%eax
    f310:	8d 50 22             	lea    0x22(%eax),%edx
    f313:	8b 45 08             	mov    0x8(%ebp),%eax
    f316:	89 90 26 04 00 00    	mov    %edx,0x426(%eax)
    f31c:	8b 45 08             	mov    0x8(%ebp),%eax
    f31f:	8b 90 26 04 00 00    	mov    0x426(%eax),%edx
    f325:	8b 45 08             	mov    0x8(%ebp),%eax
    f328:	89 90 22 04 00 00    	mov    %edx,0x422(%eax)
    f32e:	8b 45 08             	mov    0x8(%ebp),%eax
    f331:	89 04 24             	mov    %eax,(%esp)
    f334:	e8 d7 e7 ff ff       	call   db10 <init_screen>
    f339:	c9                   	leave  
    f33a:	c3                   	ret    

0000f33b <in_process>:
    f33b:	55                   	push   %ebp
    f33c:	89 e5                	mov    %esp,%ebp
    f33e:	83 ec 28             	sub    $0x28,%esp
    f341:	8b 45 0c             	mov    0xc(%ebp),%eax
    f344:	25 00 01 00 00       	and    $0x100,%eax
    f349:	85 c0                	test   %eax,%eax
    f34b:	75 17                	jne    f364 <in_process+0x29>
    f34d:	8b 45 0c             	mov    0xc(%ebp),%eax
    f350:	89 44 24 04          	mov    %eax,0x4(%esp)
    f354:	8b 45 08             	mov    0x8(%ebp),%eax
    f357:	89 04 24             	mov    %eax,(%esp)
    f35a:	e8 11 01 00 00       	call   f470 <put_key>
    f35f:	e9 0a 01 00 00       	jmp    f46e <in_process+0x133>
    f364:	8b 45 0c             	mov    0xc(%ebp),%eax
    f367:	25 ff 01 00 00       	and    $0x1ff,%eax
    f36c:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f36f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f372:	2d 02 01 00 00       	sub    $0x102,%eax
    f377:	83 f8 24             	cmp    $0x24,%eax
    f37a:	0f 87 e1 00 00 00    	ja     f461 <in_process+0x126>
    f380:	8b 04 85 d8 29 01 00 	mov    0x129d8(,%eax,4),%eax
    f387:	ff e0                	jmp    *%eax
    f389:	c7 44 24 04 0a 00 00 	movl   $0xa,0x4(%esp)
    f390:	00 
    f391:	8b 45 08             	mov    0x8(%ebp),%eax
    f394:	89 04 24             	mov    %eax,(%esp)
    f397:	e8 d4 00 00 00       	call   f470 <put_key>
    f39c:	e9 cd 00 00 00       	jmp    f46e <in_process+0x133>
    f3a1:	c7 44 24 04 08 00 00 	movl   $0x8,0x4(%esp)
    f3a8:	00 
    f3a9:	8b 45 08             	mov    0x8(%ebp),%eax
    f3ac:	89 04 24             	mov    %eax,(%esp)
    f3af:	e8 bc 00 00 00       	call   f470 <put_key>
    f3b4:	e9 b5 00 00 00       	jmp    f46e <in_process+0x133>
    f3b9:	c7 44 24 04 09 00 00 	movl   $0x9,0x4(%esp)
    f3c0:	00 
    f3c1:	8b 45 08             	mov    0x8(%ebp),%eax
    f3c4:	89 04 24             	mov    %eax,(%esp)
    f3c7:	e8 a4 00 00 00       	call   f470 <put_key>
    f3cc:	e9 9d 00 00 00       	jmp    f46e <in_process+0x133>
    f3d1:	8b 45 0c             	mov    0xc(%ebp),%eax
    f3d4:	25 00 02 00 00       	and    $0x200,%eax
    f3d9:	85 c0                	test   %eax,%eax
    f3db:	75 0c                	jne    f3e9 <in_process+0xae>
    f3dd:	8b 45 0c             	mov    0xc(%ebp),%eax
    f3e0:	25 00 04 00 00       	and    $0x400,%eax
    f3e5:	85 c0                	test   %eax,%eax
    f3e7:	74 7e                	je     f467 <in_process+0x12c>
    f3e9:	8b 45 08             	mov    0x8(%ebp),%eax
    f3ec:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f3f2:	c7 44 24 04 ff ff ff 	movl   $0xffffffff,0x4(%esp)
    f3f9:	ff 
    f3fa:	89 04 24             	mov    %eax,(%esp)
    f3fd:	e8 3e f4 ff ff       	call   e840 <scroll_screen>
    f402:	eb 6a                	jmp    f46e <in_process+0x133>
    f404:	8b 45 0c             	mov    0xc(%ebp),%eax
    f407:	25 00 02 00 00       	and    $0x200,%eax
    f40c:	85 c0                	test   %eax,%eax
    f40e:	75 0c                	jne    f41c <in_process+0xe1>
    f410:	8b 45 0c             	mov    0xc(%ebp),%eax
    f413:	25 00 04 00 00       	and    $0x400,%eax
    f418:	85 c0                	test   %eax,%eax
    f41a:	74 4e                	je     f46a <in_process+0x12f>
    f41c:	8b 45 08             	mov    0x8(%ebp),%eax
    f41f:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f425:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
    f42c:	00 
    f42d:	89 04 24             	mov    %eax,(%esp)
    f430:	e8 0b f4 ff ff       	call   e840 <scroll_screen>
    f435:	eb 37                	jmp    f46e <in_process+0x133>
    f437:	8b 45 0c             	mov    0xc(%ebp),%eax
    f43a:	25 00 20 00 00       	and    $0x2000,%eax
    f43f:	85 c0                	test   %eax,%eax
    f441:	75 0c                	jne    f44f <in_process+0x114>
    f443:	8b 45 0c             	mov    0xc(%ebp),%eax
    f446:	25 00 40 00 00       	and    $0x4000,%eax
    f44b:	85 c0                	test   %eax,%eax
    f44d:	74 1e                	je     f46d <in_process+0x132>
    f44f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f452:	2d 11 01 00 00       	sub    $0x111,%eax
    f457:	89 04 24             	mov    %eax,(%esp)
    f45a:	e8 aa f3 ff ff       	call   e809 <select_console>
    f45f:	eb 0d                	jmp    f46e <in_process+0x133>
    f461:	90                   	nop
    f462:	eb 0a                	jmp    f46e <in_process+0x133>
    f464:	90                   	nop
    f465:	eb 07                	jmp    f46e <in_process+0x133>
    f467:	90                   	nop
    f468:	eb 04                	jmp    f46e <in_process+0x133>
    f46a:	90                   	nop
    f46b:	eb 01                	jmp    f46e <in_process+0x133>
    f46d:	90                   	nop
    f46e:	c9                   	leave  
    f46f:	c3                   	ret    

0000f470 <put_key>:
    f470:	55                   	push   %ebp
    f471:	89 e5                	mov    %esp,%ebp
    f473:	8b 45 08             	mov    0x8(%ebp),%eax
    f476:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    f47c:	3d ff 00 00 00       	cmp    $0xff,%eax
    f481:	7f 60                	jg     f4e3 <put_key+0x73>
    f483:	8b 45 08             	mov    0x8(%ebp),%eax
    f486:	8b 80 22 04 00 00    	mov    0x422(%eax),%eax
    f48c:	8b 55 0c             	mov    0xc(%ebp),%edx
    f48f:	89 10                	mov    %edx,(%eax)
    f491:	8b 45 08             	mov    0x8(%ebp),%eax
    f494:	8b 80 22 04 00 00    	mov    0x422(%eax),%eax
    f49a:	8d 50 04             	lea    0x4(%eax),%edx
    f49d:	8b 45 08             	mov    0x8(%ebp),%eax
    f4a0:	89 90 22 04 00 00    	mov    %edx,0x422(%eax)
    f4a6:	8b 45 08             	mov    0x8(%ebp),%eax
    f4a9:	8b 80 22 04 00 00    	mov    0x422(%eax),%eax
    f4af:	8b 55 08             	mov    0x8(%ebp),%edx
    f4b2:	83 c2 22             	add    $0x22,%edx
    f4b5:	81 c2 00 04 00 00    	add    $0x400,%edx
    f4bb:	39 d0                	cmp    %edx,%eax
    f4bd:	75 0f                	jne    f4ce <put_key+0x5e>
    f4bf:	8b 45 08             	mov    0x8(%ebp),%eax
    f4c2:	8d 50 22             	lea    0x22(%eax),%edx
    f4c5:	8b 45 08             	mov    0x8(%ebp),%eax
    f4c8:	89 90 22 04 00 00    	mov    %edx,0x422(%eax)
    f4ce:	8b 45 08             	mov    0x8(%ebp),%eax
    f4d1:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    f4d7:	8d 50 01             	lea    0x1(%eax),%edx
    f4da:	8b 45 08             	mov    0x8(%ebp),%eax
    f4dd:	89 90 2a 04 00 00    	mov    %edx,0x42a(%eax)
    f4e3:	5d                   	pop    %ebp
    f4e4:	c3                   	ret    

0000f4e5 <tty_dev_read>:
    f4e5:	55                   	push   %ebp
    f4e6:	89 e5                	mov    %esp,%ebp
    f4e8:	83 ec 18             	sub    $0x18,%esp
    f4eb:	8b 45 08             	mov    0x8(%ebp),%eax
    f4ee:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f4f4:	89 04 24             	mov    %eax,(%esp)
    f4f7:	e8 2b eb ff ff       	call   e027 <is_current_console>
    f4fc:	85 c0                	test   %eax,%eax
    f4fe:	74 0b                	je     f50b <tty_dev_read+0x26>
    f500:	8b 45 08             	mov    0x8(%ebp),%eax
    f503:	89 04 24             	mov    %eax,(%esp)
    f506:	e8 bd f6 ff ff       	call   ebc8 <keyboard_read>
    f50b:	c9                   	leave  
    f50c:	c3                   	ret    

0000f50d <tty_dev_write>:
    f50d:	55                   	push   %ebp
    f50e:	89 e5                	mov    %esp,%ebp
    f510:	83 ec 58             	sub    $0x58,%esp
    f513:	e9 e8 01 00 00       	jmp    f700 <tty_dev_write+0x1f3>
    f518:	8b 45 08             	mov    0x8(%ebp),%eax
    f51b:	8b 80 26 04 00 00    	mov    0x426(%eax),%eax
    f521:	8b 00                	mov    (%eax),%eax
    f523:	88 45 f3             	mov    %al,-0xd(%ebp)
    f526:	8b 45 08             	mov    0x8(%ebp),%eax
    f529:	8b 80 26 04 00 00    	mov    0x426(%eax),%eax
    f52f:	8d 50 04             	lea    0x4(%eax),%edx
    f532:	8b 45 08             	mov    0x8(%ebp),%eax
    f535:	89 90 26 04 00 00    	mov    %edx,0x426(%eax)
    f53b:	8b 45 08             	mov    0x8(%ebp),%eax
    f53e:	8b 80 26 04 00 00    	mov    0x426(%eax),%eax
    f544:	8b 55 08             	mov    0x8(%ebp),%edx
    f547:	83 c2 22             	add    $0x22,%edx
    f54a:	81 c2 00 04 00 00    	add    $0x400,%edx
    f550:	39 d0                	cmp    %edx,%eax
    f552:	75 0f                	jne    f563 <tty_dev_write+0x56>
    f554:	8b 45 08             	mov    0x8(%ebp),%eax
    f557:	8d 50 22             	lea    0x22(%eax),%edx
    f55a:	8b 45 08             	mov    0x8(%ebp),%eax
    f55d:	89 90 26 04 00 00    	mov    %edx,0x426(%eax)
    f563:	8b 45 08             	mov    0x8(%ebp),%eax
    f566:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    f56c:	8d 50 ff             	lea    -0x1(%eax),%edx
    f56f:	8b 45 08             	mov    0x8(%ebp),%eax
    f572:	89 90 2a 04 00 00    	mov    %edx,0x42a(%eax)
    f578:	8b 45 08             	mov    0x8(%ebp),%eax
    f57b:	8b 80 3a 04 00 00    	mov    0x43a(%eax),%eax
    f581:	85 c0                	test   %eax,%eax
    f583:	0f 84 77 01 00 00    	je     f700 <tty_dev_write+0x1f3>
    f589:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f58d:	3c 1f                	cmp    $0x1f,%al
    f58f:	0f 8e 96 00 00 00    	jle    f62b <tty_dev_write+0x11e>
    f595:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f599:	3c 7f                	cmp    $0x7f,%al
    f59b:	0f 84 8a 00 00 00    	je     f62b <tty_dev_write+0x11e>
    f5a1:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f5a5:	0f be d0             	movsbl %al,%edx
    f5a8:	8b 45 08             	mov    0x8(%ebp),%eax
    f5ab:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f5b1:	89 54 24 04          	mov    %edx,0x4(%esp)
    f5b5:	89 04 24             	mov    %eax,(%esp)
    f5b8:	e8 e2 e6 ff ff       	call   dc9f <out_char>
    f5bd:	8b 45 08             	mov    0x8(%ebp),%eax
    f5c0:	8b 90 36 04 00 00    	mov    0x436(%eax),%edx
    f5c6:	8b 45 08             	mov    0x8(%ebp),%eax
    f5c9:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    f5cf:	8d 04 02             	lea    (%edx,%eax,1),%eax
    f5d2:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f5d5:	8d 45 f3             	lea    -0xd(%ebp),%eax
    f5d8:	89 44 24 04          	mov    %eax,0x4(%esp)
    f5dc:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    f5e3:	e8 ed 3e ff ff       	call   34d5 <va2la>
    f5e8:	c7 44 24 08 01 00 00 	movl   $0x1,0x8(%esp)
    f5ef:	00 
    f5f0:	89 44 24 04          	mov    %eax,0x4(%esp)
    f5f4:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f5f7:	89 04 24             	mov    %eax,(%esp)
    f5fa:	e8 f1 0a 00 00       	call   100f0 <memcpy>
    f5ff:	8b 45 08             	mov    0x8(%ebp),%eax
    f602:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    f608:	8d 50 01             	lea    0x1(%eax),%edx
    f60b:	8b 45 08             	mov    0x8(%ebp),%eax
    f60e:	89 90 3e 04 00 00    	mov    %edx,0x43e(%eax)
    f614:	8b 45 08             	mov    0x8(%ebp),%eax
    f617:	8b 80 3a 04 00 00    	mov    0x43a(%eax),%eax
    f61d:	8d 50 ff             	lea    -0x1(%eax),%edx
    f620:	8b 45 08             	mov    0x8(%ebp),%eax
    f623:	89 90 3a 04 00 00    	mov    %edx,0x43a(%eax)
    f629:	eb 5b                	jmp    f686 <tty_dev_write+0x179>
    f62b:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f62f:	3c 08                	cmp    $0x8,%al
    f631:	75 53                	jne    f686 <tty_dev_write+0x179>
    f633:	8b 45 08             	mov    0x8(%ebp),%eax
    f636:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    f63c:	85 c0                	test   %eax,%eax
    f63e:	74 46                	je     f686 <tty_dev_write+0x179>
    f640:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f644:	0f be d0             	movsbl %al,%edx
    f647:	8b 45 08             	mov    0x8(%ebp),%eax
    f64a:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f650:	89 54 24 04          	mov    %edx,0x4(%esp)
    f654:	89 04 24             	mov    %eax,(%esp)
    f657:	e8 43 e6 ff ff       	call   dc9f <out_char>
    f65c:	8b 45 08             	mov    0x8(%ebp),%eax
    f65f:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    f665:	8d 50 ff             	lea    -0x1(%eax),%edx
    f668:	8b 45 08             	mov    0x8(%ebp),%eax
    f66b:	89 90 3e 04 00 00    	mov    %edx,0x43e(%eax)
    f671:	8b 45 08             	mov    0x8(%ebp),%eax
    f674:	8b 80 3a 04 00 00    	mov    0x43a(%eax),%eax
    f67a:	8d 50 01             	lea    0x1(%eax),%edx
    f67d:	8b 45 08             	mov    0x8(%ebp),%eax
    f680:	89 90 3a 04 00 00    	mov    %edx,0x43a(%eax)
    f686:	0f b6 45 f3          	movzbl -0xd(%ebp),%eax
    f68a:	3c 0a                	cmp    $0xa,%al
    f68c:	74 0d                	je     f69b <tty_dev_write+0x18e>
    f68e:	8b 45 08             	mov    0x8(%ebp),%eax
    f691:	8b 80 3a 04 00 00    	mov    0x43a(%eax),%eax
    f697:	85 c0                	test   %eax,%eax
    f699:	75 65                	jne    f700 <tty_dev_write+0x1f3>
    f69b:	8b 45 08             	mov    0x8(%ebp),%eax
    f69e:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f6a4:	c7 44 24 04 0a 00 00 	movl   $0xa,0x4(%esp)
    f6ab:	00 
    f6ac:	89 04 24             	mov    %eax,(%esp)
    f6af:	e8 eb e5 ff ff       	call   dc9f <out_char>
    f6b4:	c7 45 c7 1c 00 00 00 	movl   $0x1c,-0x39(%ebp)
    f6bb:	8b 45 08             	mov    0x8(%ebp),%eax
    f6be:	8b 80 32 04 00 00    	mov    0x432(%eax),%eax
    f6c4:	89 45 d3             	mov    %eax,-0x2d(%ebp)
    f6c7:	8b 45 08             	mov    0x8(%ebp),%eax
    f6ca:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    f6d0:	89 45 cf             	mov    %eax,-0x31(%ebp)
    f6d3:	8b 45 08             	mov    0x8(%ebp),%eax
    f6d6:	8b 80 2e 04 00 00    	mov    0x42e(%eax),%eax
    f6dc:	8d 55 c3             	lea    -0x3d(%ebp),%edx
    f6df:	89 54 24 08          	mov    %edx,0x8(%esp)
    f6e3:	89 44 24 04          	mov    %eax,0x4(%esp)
    f6e7:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    f6ee:	e8 85 0a 00 00       	call   10178 <send_recv>
    f6f3:	8b 45 08             	mov    0x8(%ebp),%eax
    f6f6:	c7 80 3a 04 00 00 00 	movl   $0x0,0x43a(%eax)
    f6fd:	00 00 00 
    f700:	8b 45 08             	mov    0x8(%ebp),%eax
    f703:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    f709:	85 c0                	test   %eax,%eax
    f70b:	0f 85 07 fe ff ff    	jne    f518 <tty_dev_write+0xb>
    f711:	c9                   	leave  
    f712:	c3                   	ret    

0000f713 <tty_do_read>:
    f713:	55                   	push   %ebp
    f714:	89 e5                	mov    %esp,%ebp
    f716:	83 ec 18             	sub    $0x18,%esp
    f719:	8b 45 0c             	mov    0xc(%ebp),%eax
    f71c:	8b 10                	mov    (%eax),%edx
    f71e:	8b 45 08             	mov    0x8(%ebp),%eax
    f721:	89 90 2e 04 00 00    	mov    %edx,0x42e(%eax)
    f727:	8b 45 0c             	mov    0xc(%ebp),%eax
    f72a:	8b 50 10             	mov    0x10(%eax),%edx
    f72d:	8b 45 08             	mov    0x8(%ebp),%eax
    f730:	89 90 32 04 00 00    	mov    %edx,0x432(%eax)
    f736:	8b 45 0c             	mov    0xc(%ebp),%eax
    f739:	8b 50 2c             	mov    0x2c(%eax),%edx
    f73c:	8b 45 08             	mov    0x8(%ebp),%eax
    f73f:	8b 80 32 04 00 00    	mov    0x432(%eax),%eax
    f745:	89 54 24 04          	mov    %edx,0x4(%esp)
    f749:	89 04 24             	mov    %eax,(%esp)
    f74c:	e8 84 3d ff ff       	call   34d5 <va2la>
    f751:	8b 55 08             	mov    0x8(%ebp),%edx
    f754:	89 82 36 04 00 00    	mov    %eax,0x436(%edx)
    f75a:	8b 45 0c             	mov    0xc(%ebp),%eax
    f75d:	8b 50 0c             	mov    0xc(%eax),%edx
    f760:	8b 45 08             	mov    0x8(%ebp),%eax
    f763:	89 90 3a 04 00 00    	mov    %edx,0x43a(%eax)
    f769:	8b 45 08             	mov    0x8(%ebp),%eax
    f76c:	c7 80 3e 04 00 00 00 	movl   $0x0,0x43e(%eax)
    f773:	00 00 00 
    f776:	8b 45 0c             	mov    0xc(%ebp),%eax
    f779:	c7 40 04 1b 00 00 00 	movl   $0x1b,0x4(%eax)
    f780:	8b 45 08             	mov    0x8(%ebp),%eax
    f783:	8b 90 3a 04 00 00    	mov    0x43a(%eax),%edx
    f789:	8b 45 0c             	mov    0xc(%ebp),%eax
    f78c:	89 50 0c             	mov    %edx,0xc(%eax)
    f78f:	8b 45 08             	mov    0x8(%ebp),%eax
    f792:	8b 80 2e 04 00 00    	mov    0x42e(%eax),%eax
    f798:	8b 55 0c             	mov    0xc(%ebp),%edx
    f79b:	89 54 24 08          	mov    %edx,0x8(%esp)
    f79f:	89 44 24 04          	mov    %eax,0x4(%esp)
    f7a3:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    f7aa:	e8 c9 09 00 00       	call   10178 <send_recv>
    f7af:	c9                   	leave  
    f7b0:	c3                   	ret    

0000f7b1 <tty_do_write>:
    f7b1:	55                   	push   %ebp
    f7b2:	89 e5                	mov    %esp,%ebp
    f7b4:	83 ec 38             	sub    $0x38,%esp
    f7b7:	8b 45 0c             	mov    0xc(%ebp),%eax
    f7ba:	8b 50 2c             	mov    0x2c(%eax),%edx
    f7bd:	8b 45 0c             	mov    0xc(%ebp),%eax
    f7c0:	8b 40 10             	mov    0x10(%eax),%eax
    f7c3:	89 54 24 04          	mov    %edx,0x4(%esp)
    f7c7:	89 04 24             	mov    %eax,(%esp)
    f7ca:	e8 06 3d ff ff       	call   34d5 <va2la>
    f7cf:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f7d2:	8b 45 0c             	mov    0xc(%ebp),%eax
    f7d5:	8b 40 0c             	mov    0xc(%eax),%eax
    f7d8:	89 45 f0             	mov    %eax,-0x10(%ebp)
    f7db:	eb 7b                	jmp    f858 <tty_do_write+0xa7>
    f7dd:	b8 02 00 00 00       	mov    $0x2,%eax
    f7e2:	83 7d f0 02          	cmpl   $0x2,-0x10(%ebp)
    f7e6:	0f 4e 45 f0          	cmovle -0x10(%ebp),%eax
    f7ea:	89 45 e8             	mov    %eax,-0x18(%ebp)
    f7ed:	8d 45 e6             	lea    -0x1a(%ebp),%eax
    f7f0:	89 44 24 04          	mov    %eax,0x4(%esp)
    f7f4:	c7 04 24 00 00 00 00 	movl   $0x0,(%esp)
    f7fb:	e8 d5 3c ff ff       	call   34d5 <va2la>
    f800:	8b 55 e8             	mov    -0x18(%ebp),%edx
    f803:	89 54 24 08          	mov    %edx,0x8(%esp)
    f807:	8b 55 f4             	mov    -0xc(%ebp),%edx
    f80a:	89 54 24 04          	mov    %edx,0x4(%esp)
    f80e:	89 04 24             	mov    %eax,(%esp)
    f811:	e8 da 08 00 00       	call   100f0 <memcpy>
    f816:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
    f81d:	eb 25                	jmp    f844 <tty_do_write+0x93>
    f81f:	8d 45 e6             	lea    -0x1a(%ebp),%eax
    f822:	03 45 ec             	add    -0x14(%ebp),%eax
    f825:	0f b6 00             	movzbl (%eax),%eax
    f828:	0f be d0             	movsbl %al,%edx
    f82b:	8b 45 08             	mov    0x8(%ebp),%eax
    f82e:	8b 80 42 04 00 00    	mov    0x442(%eax),%eax
    f834:	89 54 24 04          	mov    %edx,0x4(%esp)
    f838:	89 04 24             	mov    %eax,(%esp)
    f83b:	e8 5f e4 ff ff       	call   dc9f <out_char>
    f840:	83 45 ec 01          	addl   $0x1,-0x14(%ebp)
    f844:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f847:	3b 45 e8             	cmp    -0x18(%ebp),%eax
    f84a:	7c d3                	jl     f81f <tty_do_write+0x6e>
    f84c:	8b 45 e8             	mov    -0x18(%ebp),%eax
    f84f:	29 45 f0             	sub    %eax,-0x10(%ebp)
    f852:	8b 45 e8             	mov    -0x18(%ebp),%eax
    f855:	01 45 f4             	add    %eax,-0xc(%ebp)
    f858:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    f85c:	0f 85 7b ff ff ff    	jne    f7dd <tty_do_write+0x2c>
    f862:	8b 45 0c             	mov    0xc(%ebp),%eax
    f865:	c7 40 04 2d 00 00 00 	movl   $0x2d,0x4(%eax)
    f86c:	8b 45 0c             	mov    0xc(%ebp),%eax
    f86f:	8b 00                	mov    (%eax),%eax
    f871:	8b 55 0c             	mov    0xc(%ebp),%edx
    f874:	89 54 24 08          	mov    %edx,0x8(%esp)
    f878:	89 44 24 04          	mov    %eax,0x4(%esp)
    f87c:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    f883:	e8 f0 08 00 00       	call   10178 <send_recv>
    f888:	c9                   	leave  
    f889:	c3                   	ret    

0000f88a <sys_printx>:
    f88a:	55                   	push   %ebp
    f88b:	89 e5                	mov    %esp,%ebp
    f88d:	83 ec 58             	sub    $0x58,%esp
    f890:	c7 45 bf 3f 20 6b 5f 	movl   $0x5f6b203f,-0x41(%ebp)
    f897:	c7 45 c3 72 65 65 6e 	movl   $0x6e656572,-0x3d(%ebp)
    f89e:	c7 45 c7 74 65 72 20 	movl   $0x20726574,-0x39(%ebp)
    f8a5:	c7 45 cb 69 73 20 69 	movl   $0x69207369,-0x35(%ebp)
    f8ac:	c7 45 cf 6e 63 6f 72 	movl   $0x726f636e,-0x31(%ebp)
    f8b3:	c7 45 d3 72 65 63 74 	movl   $0x74636572,-0x2d(%ebp)
    f8ba:	c7 45 d7 20 66 6f 72 	movl   $0x726f6620,-0x29(%ebp)
    f8c1:	c7 45 db 20 75 6e 6b 	movl   $0x6b6e7520,-0x25(%ebp)
    f8c8:	c7 45 df 6e 6f 77 6e 	movl   $0x6e776f6e,-0x21(%ebp)
    f8cf:	c7 45 e3 20 72 65 61 	movl   $0x61657220,-0x1d(%ebp)
    f8d6:	c7 45 e7 73 6f 6e 00 	movl   $0x6e6f73,-0x19(%ebp)
    f8dd:	c6 45 bf 02          	movb   $0x2,-0x41(%ebp)
    f8e1:	a1 88 d6 04 00       	mov    0x4d688,%eax
    f8e6:	85 c0                	test   %eax,%eax
    f8e8:	75 2a                	jne    f914 <sys_printx+0x8a>
    f8ea:	8b 55 14             	mov    0x14(%ebp),%edx
    f8ed:	b8 c0 0c 05 00       	mov    $0x50cc0,%eax
    f8f2:	89 d1                	mov    %edx,%ecx
    f8f4:	29 c1                	sub    %eax,%ecx
    f8f6:	89 c8                	mov    %ecx,%eax
    f8f8:	d1 f8                	sar    %eax
    f8fa:	69 c0 93 7c 28 ad    	imul   $0xad287c93,%eax,%eax
    f900:	8b 55 10             	mov    0x10(%ebp),%edx
    f903:	89 54 24 04          	mov    %edx,0x4(%esp)
    f907:	89 04 24             	mov    %eax,(%esp)
    f90a:	e8 c6 3b ff ff       	call   34d5 <va2la>
    f90f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f912:	eb 17                	jmp    f92b <sys_printx+0xa1>
    f914:	a1 88 d6 04 00       	mov    0x4d688,%eax
    f919:	85 c0                	test   %eax,%eax
    f91b:	74 08                	je     f925 <sys_printx+0x9b>
    f91d:	8b 45 10             	mov    0x10(%ebp),%eax
    f920:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f923:	eb 06                	jmp    f92b <sys_printx+0xa1>
    f925:	8d 45 bf             	lea    -0x41(%ebp),%eax
    f928:	89 45 f4             	mov    %eax,-0xc(%ebp)
    f92b:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f92e:	0f b6 00             	movzbl (%eax),%eax
    f931:	3c 02                	cmp    $0x2,%al
    f933:	74 1e                	je     f953 <sys_printx+0xc9>
    f935:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f938:	0f b6 00             	movzbl (%eax),%eax
    f93b:	3c 03                	cmp    $0x3,%al
    f93d:	0f 85 c4 00 00 00    	jne    fa07 <sys_printx+0x17d>
    f943:	a1 64 ed 04 00       	mov    0x4ed64,%eax
    f948:	3d dc 2c 05 00       	cmp    $0x52cdc,%eax
    f94d:	0f 83 b7 00 00 00    	jae    fa0a <sys_printx+0x180>
    f953:	e8 b7 56 ff ff       	call   500f <disable_int>
    f958:	c7 45 f0 00 80 0b 00 	movl   $0xb8000,-0x10(%ebp)
    f95f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f962:	83 c0 01             	add    $0x1,%eax
    f965:	89 45 ec             	mov    %eax,-0x14(%ebp)
    f968:	eb 6e                	jmp    f9d8 <sys_printx+0x14e>
    f96a:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f96d:	0f b6 10             	movzbl (%eax),%edx
    f970:	8b 45 f0             	mov    -0x10(%ebp),%eax
    f973:	88 10                	mov    %dl,(%eax)
    f975:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    f979:	83 45 ec 01          	addl   $0x1,-0x14(%ebp)
    f97d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    f980:	c6 00 1c             	movb   $0x1c,(%eax)
    f983:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    f987:	8b 45 ec             	mov    -0x14(%ebp),%eax
    f98a:	0f b6 00             	movzbl (%eax),%eax
    f98d:	84 c0                	test   %al,%al
    f98f:	75 47                	jne    f9d8 <sys_printx+0x14e>
    f991:	eb 0e                	jmp    f9a1 <sys_printx+0x117>
    f993:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    f997:	8b 45 f0             	mov    -0x10(%ebp),%eax
    f99a:	c6 00 08             	movb   $0x8,(%eax)
    f99d:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
    f9a1:	8b 45 f0             	mov    -0x10(%ebp),%eax
    f9a4:	8d 88 00 80 f4 ff    	lea    -0xb8000(%eax),%ecx
    f9aa:	ba 67 66 66 66       	mov    $0x66666667,%edx
    f9af:	89 c8                	mov    %ecx,%eax
    f9b1:	f7 ea                	imul   %edx
    f9b3:	c1 fa 09             	sar    $0x9,%edx
    f9b6:	89 c8                	mov    %ecx,%eax
    f9b8:	c1 f8 1f             	sar    $0x1f,%eax
    f9bb:	29 c2                	sub    %eax,%edx
    f9bd:	89 d0                	mov    %edx,%eax
    f9bf:	c1 e0 02             	shl    $0x2,%eax
    f9c2:	01 d0                	add    %edx,%eax
    f9c4:	c1 e0 08             	shl    $0x8,%eax
    f9c7:	89 ca                	mov    %ecx,%edx
    f9c9:	29 c2                	sub    %eax,%edx
    f9cb:	85 d2                	test   %edx,%edx
    f9cd:	75 c4                	jne    f993 <sys_printx+0x109>
    f9cf:	8b 45 f4             	mov    -0xc(%ebp),%eax
    f9d2:	83 c0 01             	add    $0x1,%eax
    f9d5:	89 45 ec             	mov    %eax,-0x14(%ebp)
    f9d8:	81 7d f0 ff ff 0b 00 	cmpl   $0xbffff,-0x10(%ebp)
    f9df:	76 89                	jbe    f96a <sys_printx+0xe0>
    f9e1:	f4                   	hlt    
    f9e2:	eb 2d                	jmp    fa11 <sys_printx+0x187>
    f9e4:	80 7d eb 02          	cmpb   $0x2,-0x15(%ebp)
    f9e8:	74 23                	je     fa0d <sys_printx+0x183>
    f9ea:	80 7d eb 03          	cmpb   $0x3,-0x15(%ebp)
    f9ee:	74 20                	je     fa10 <sys_printx+0x186>
    f9f0:	0f be 55 eb          	movsbl -0x15(%ebp),%edx
    f9f4:	a1 02 df 04 00       	mov    0x4df02,%eax
    f9f9:	89 54 24 04          	mov    %edx,0x4(%esp)
    f9fd:	89 04 24             	mov    %eax,(%esp)
    fa00:	e8 9a e2 ff ff       	call   dc9f <out_char>
    fa05:	eb 0a                	jmp    fa11 <sys_printx+0x187>
    fa07:	90                   	nop
    fa08:	eb 07                	jmp    fa11 <sys_printx+0x187>
    fa0a:	90                   	nop
    fa0b:	eb 04                	jmp    fa11 <sys_printx+0x187>
    fa0d:	90                   	nop
    fa0e:	eb 01                	jmp    fa11 <sys_printx+0x187>
    fa10:	90                   	nop
    fa11:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fa14:	0f b6 00             	movzbl (%eax),%eax
    fa17:	88 45 eb             	mov    %al,-0x15(%ebp)
    fa1a:	80 7d eb 00          	cmpb   $0x0,-0x15(%ebp)
    fa1e:	0f 95 c0             	setne  %al
    fa21:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    fa25:	84 c0                	test   %al,%al
    fa27:	75 bb                	jne    f9e4 <sys_printx+0x15a>
    fa29:	b8 00 00 00 00       	mov    $0x0,%eax
    fa2e:	c9                   	leave  
    fa2f:	c3                   	ret    

0000fa30 <dump_tty_buf>:
    fa30:	55                   	push   %ebp
    fa31:	89 e5                	mov    %esp,%ebp
    fa33:	83 ec 28             	sub    $0x28,%esp
    fa36:	c7 45 f4 06 df 04 00 	movl   $0x4df06,-0xc(%ebp)
    fa3d:	c7 04 24 00 3a 01 00 	movl   $0x13a00,(%esp)
    fa44:	e8 41 03 00 00       	call   fd8a <printl>
    fa49:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fa4c:	8b 80 22 04 00 00    	mov    0x422(%eax),%eax
    fa52:	89 c2                	mov    %eax,%edx
    fa54:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fa57:	83 c0 22             	add    $0x22,%eax
    fa5a:	89 d1                	mov    %edx,%ecx
    fa5c:	29 c1                	sub    %eax,%ecx
    fa5e:	89 c8                	mov    %ecx,%eax
    fa60:	c1 f8 02             	sar    $0x2,%eax
    fa63:	89 44 24 04          	mov    %eax,0x4(%esp)
    fa67:	c7 04 24 6c 2a 01 00 	movl   $0x12a6c,(%esp)
    fa6e:	e8 17 03 00 00       	call   fd8a <printl>
    fa73:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fa76:	8b 80 26 04 00 00    	mov    0x426(%eax),%eax
    fa7c:	89 c2                	mov    %eax,%edx
    fa7e:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fa81:	83 c0 22             	add    $0x22,%eax
    fa84:	89 d1                	mov    %edx,%ecx
    fa86:	29 c1                	sub    %eax,%ecx
    fa88:	89 c8                	mov    %ecx,%eax
    fa8a:	c1 f8 02             	sar    $0x2,%eax
    fa8d:	89 44 24 04          	mov    %eax,0x4(%esp)
    fa91:	c7 04 24 76 2a 01 00 	movl   $0x12a76,(%esp)
    fa98:	e8 ed 02 00 00       	call   fd8a <printl>
    fa9d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    faa0:	8b 80 2a 04 00 00    	mov    0x42a(%eax),%eax
    faa6:	89 44 24 04          	mov    %eax,0x4(%esp)
    faaa:	c7 04 24 80 2a 01 00 	movl   $0x12a80,(%esp)
    fab1:	e8 d4 02 00 00       	call   fd8a <printl>
    fab6:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fab9:	8b 80 2e 04 00 00    	mov    0x42e(%eax),%eax
    fabf:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fac2:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fac5:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    facb:	83 c0 60             	add    $0x60,%eax
    face:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    fad3:	8d 50 02             	lea    0x2(%eax),%edx
    fad6:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fad9:	89 44 24 08          	mov    %eax,0x8(%esp)
    fadd:	89 54 24 04          	mov    %edx,0x4(%esp)
    fae1:	c7 04 24 89 2a 01 00 	movl   $0x12a89,(%esp)
    fae8:	e8 9d 02 00 00       	call   fd8a <printl>
    faed:	8b 45 f4             	mov    -0xc(%ebp),%eax
    faf0:	8b 80 32 04 00 00    	mov    0x432(%eax),%eax
    faf6:	89 45 f0             	mov    %eax,-0x10(%ebp)
    faf9:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fafc:	69 c0 36 03 00 00    	imul   $0x336,%eax,%eax
    fb02:	83 c0 60             	add    $0x60,%eax
    fb05:	05 c0 0c 05 00       	add    $0x50cc0,%eax
    fb0a:	8d 50 02             	lea    0x2(%eax),%edx
    fb0d:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fb10:	89 44 24 08          	mov    %eax,0x8(%esp)
    fb14:	89 54 24 04          	mov    %edx,0x4(%esp)
    fb18:	c7 04 24 89 2a 01 00 	movl   $0x12a89,(%esp)
    fb1f:	e8 66 02 00 00       	call   fd8a <printl>
    fb24:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fb27:	8b 80 36 04 00 00    	mov    0x436(%eax),%eax
    fb2d:	89 44 24 04          	mov    %eax,0x4(%esp)
    fb31:	c7 04 24 9a 2a 01 00 	movl   $0x12a9a,(%esp)
    fb38:	e8 4d 02 00 00       	call   fd8a <printl>
    fb3d:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fb40:	8b 80 3a 04 00 00    	mov    0x43a(%eax),%eax
    fb46:	89 44 24 04          	mov    %eax,0x4(%esp)
    fb4a:	c7 04 24 a7 2a 01 00 	movl   $0x12aa7,(%esp)
    fb51:	e8 34 02 00 00       	call   fd8a <printl>
    fb56:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fb59:	8b 80 3e 04 00 00    	mov    0x43e(%eax),%eax
    fb5f:	89 44 24 04          	mov    %eax,0x4(%esp)
    fb63:	c7 04 24 b5 2a 01 00 	movl   $0x12ab5,(%esp)
    fb6a:	e8 1b 02 00 00       	call   fd8a <printl>
    fb6f:	c7 04 24 c4 2a 01 00 	movl   $0x12ac4,(%esp)
    fb76:	e8 0f 02 00 00       	call   fd8a <printl>
    fb7b:	c7 44 24 04 e6 2a 01 	movl   $0x12ae6,0x4(%esp)
    fb82:	00 
    fb83:	c7 04 24 00 3a 01 00 	movl   $0x13a00,(%esp)
    fb8a:	e8 b7 05 00 00       	call   10146 <strcpy>
    fb8f:	c9                   	leave  
    fb90:	c3                   	ret    
    fb91:	90                   	nop
    fb92:	90                   	nop
    fb93:	90                   	nop

0000fb94 <task_inet>:
    fb94:	55                   	push   %ebp
    fb95:	89 e5                	mov    %esp,%ebp
    fb97:	eb fe                	jmp    fb97 <task_inet+0x3>
    fb99:	90                   	nop
    fb9a:	90                   	nop
    fb9b:	90                   	nop

0000fb9c <task_pci>:
    fb9c:	55                   	push   %ebp
    fb9d:	89 e5                	mov    %esp,%ebp
    fb9f:	83 ec 08             	sub    $0x8,%esp
    fba2:	e8 02 00 00 00       	call   fba9 <pci_init>
    fba7:	eb fe                	jmp    fba7 <task_pci+0xb>

0000fba9 <pci_init>:
    fba9:	55                   	push   %ebp
    fbaa:	89 e5                	mov    %esp,%ebp
    fbac:	5d                   	pop    %ebp
    fbad:	c3                   	ret    
    fbae:	90                   	nop
    fbaf:	90                   	nop

0000fbb0 <dev_driver_task>:
    fbb0:	55                   	push   %ebp
    fbb1:	89 e5                	mov    %esp,%ebp
    fbb3:	83 ec 58             	sub    $0x58,%esp
    fbb6:	eb 04                	jmp    fbbc <dev_driver_task+0xc>
    fbb8:	90                   	nop
    fbb9:	eb 01                	jmp    fbbc <dev_driver_task+0xc>
    fbbb:	90                   	nop
    fbbc:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fbbf:	89 44 24 08          	mov    %eax,0x8(%esp)
    fbc3:	c7 44 24 04 34 00 00 	movl   $0x34,0x4(%esp)
    fbca:	00 
    fbcb:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
    fbd2:	e8 a1 05 00 00       	call   10178 <send_recv>
    fbd7:	8b 45 c4             	mov    -0x3c(%ebp),%eax
    fbda:	89 45 f4             	mov    %eax,-0xc(%ebp)
    fbdd:	8b 45 c8             	mov    -0x38(%ebp),%eax
    fbe0:	2d d1 07 00 00       	sub    $0x7d1,%eax
    fbe5:	83 f8 04             	cmp    $0x4,%eax
    fbe8:	77 48                	ja     fc32 <dev_driver_task+0x82>
    fbea:	8b 04 85 2c 2b 01 00 	mov    0x12b2c(,%eax,4),%eax
    fbf1:	ff e0                	jmp    *%eax
    fbf3:	8b 45 08             	mov    0x8(%ebp),%eax
    fbf6:	8b 10                	mov    (%eax),%edx
    fbf8:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fbfb:	89 04 24             	mov    %eax,(%esp)
    fbfe:	ff d2                	call   *%edx
    fc00:	eb 50                	jmp    fc52 <dev_driver_task+0xa2>
    fc02:	8b 45 08             	mov    0x8(%ebp),%eax
    fc05:	8b 50 04             	mov    0x4(%eax),%edx
    fc08:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fc0b:	89 04 24             	mov    %eax,(%esp)
    fc0e:	ff d2                	call   *%edx
    fc10:	eb 40                	jmp    fc52 <dev_driver_task+0xa2>
    fc12:	8b 45 08             	mov    0x8(%ebp),%eax
    fc15:	8b 50 08             	mov    0x8(%eax),%edx
    fc18:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fc1b:	89 04 24             	mov    %eax,(%esp)
    fc1e:	ff d2                	call   *%edx
    fc20:	eb 30                	jmp    fc52 <dev_driver_task+0xa2>
    fc22:	8b 45 08             	mov    0x8(%ebp),%eax
    fc25:	8b 50 0c             	mov    0xc(%eax),%edx
    fc28:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fc2b:	89 04 24             	mov    %eax,(%esp)
    fc2e:	ff d2                	call   *%edx
    fc30:	eb 20                	jmp    fc52 <dev_driver_task+0xa2>
    fc32:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fc35:	89 44 24 04          	mov    %eax,0x4(%esp)
    fc39:	c7 04 24 e8 2a 01 00 	movl   $0x12ae8,(%esp)
    fc40:	e8 42 4e ff ff       	call   4a87 <dump_msg>
    fc45:	c7 04 24 08 2b 01 00 	movl   $0x12b08,(%esp)
    fc4c:	e8 5e 07 00 00       	call   103af <spin>
    fc51:	90                   	nop
    fc52:	8b 45 c8             	mov    -0x38(%ebp),%eax
    fc55:	3d d3 07 00 00       	cmp    $0x7d3,%eax
    fc5a:	0f 84 58 ff ff ff    	je     fbb8 <dev_driver_task+0x8>
    fc60:	8b 45 c8             	mov    -0x38(%ebp),%eax
    fc63:	3d d4 07 00 00       	cmp    $0x7d4,%eax
    fc68:	0f 84 4d ff ff ff    	je     fbbb <dev_driver_task+0xb>
    fc6e:	8d 45 c4             	lea    -0x3c(%ebp),%eax
    fc71:	89 44 24 08          	mov    %eax,0x8(%esp)
    fc75:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fc78:	89 44 24 04          	mov    %eax,0x4(%esp)
    fc7c:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    fc83:	e8 f0 04 00 00       	call   10178 <send_recv>
    fc88:	e9 2f ff ff ff       	jmp    fbbc <dev_driver_task+0xc>
    fc8d:	90                   	nop
    fc8e:	90                   	nop
    fc8f:	90                   	nop

0000fc90 <syslog>:
    fc90:	55                   	push   %ebp
    fc91:	89 e5                	mov    %esp,%ebp
    fc93:	81 ec 28 04 00 00    	sub    $0x428,%esp
    fc99:	8d 45 08             	lea    0x8(%ebp),%eax
    fc9c:	83 c0 04             	add    $0x4,%eax
    fc9f:	89 45 f4             	mov    %eax,-0xc(%ebp)
    fca2:	8b 45 08             	mov    0x8(%ebp),%eax
    fca5:	8b 55 f4             	mov    -0xc(%ebp),%edx
    fca8:	89 54 24 08          	mov    %edx,0x8(%esp)
    fcac:	89 44 24 04          	mov    %eax,0x4(%esp)
    fcb0:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    fcb6:	89 04 24             	mov    %eax,(%esp)
    fcb9:	e8 7d 01 00 00       	call   fe3b <vsprintf>
    fcbe:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fcc1:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    fcc7:	89 04 24             	mov    %eax,(%esp)
    fcca:	e8 8f 04 00 00       	call   1015e <strlen>
    fccf:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    fcd2:	74 24                	je     fcf8 <syslog+0x68>
    fcd4:	c7 44 24 0c 32 00 00 	movl   $0x32,0xc(%esp)
    fcdb:	00 
    fcdc:	c7 44 24 08 40 2b 01 	movl   $0x12b40,0x8(%esp)
    fce3:	00 
    fce4:	c7 44 24 04 40 2b 01 	movl   $0x12b40,0x4(%esp)
    fceb:	00 
    fcec:	c7 04 24 4d 2b 01 00 	movl   $0x12b4d,(%esp)
    fcf3:	e8 d2 06 00 00       	call   103ca <assertion_failure>
    fcf8:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    fcfe:	89 04 24             	mov    %eax,(%esp)
    fd01:	e8 1a 8c ff ff       	call   8920 <disklog>
    fd06:	c9                   	leave  
    fd07:	c3                   	ret    

0000fd08 <printf>:
    fd08:	55                   	push   %ebp
    fd09:	89 e5                	mov    %esp,%ebp
    fd0b:	81 ec 28 04 00 00    	sub    $0x428,%esp
    fd11:	8d 45 08             	lea    0x8(%ebp),%eax
    fd14:	83 c0 04             	add    $0x4,%eax
    fd17:	89 45 f4             	mov    %eax,-0xc(%ebp)
    fd1a:	8b 45 08             	mov    0x8(%ebp),%eax
    fd1d:	8b 55 f4             	mov    -0xc(%ebp),%edx
    fd20:	89 54 24 08          	mov    %edx,0x8(%esp)
    fd24:	89 44 24 04          	mov    %eax,0x4(%esp)
    fd28:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    fd2e:	89 04 24             	mov    %eax,(%esp)
    fd31:	e8 05 01 00 00       	call   fe3b <vsprintf>
    fd36:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fd39:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fd3c:	89 44 24 08          	mov    %eax,0x8(%esp)
    fd40:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
    fd46:	89 44 24 04          	mov    %eax,0x4(%esp)
    fd4a:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
    fd51:	e8 9e 07 00 00       	call   104f4 <write>
    fd56:	89 45 ec             	mov    %eax,-0x14(%ebp)
    fd59:	8b 45 ec             	mov    -0x14(%ebp),%eax
    fd5c:	3b 45 f0             	cmp    -0x10(%ebp),%eax
    fd5f:	74 24                	je     fd85 <printf+0x7d>
    fd61:	c7 44 24 0c 34 00 00 	movl   $0x34,0xc(%esp)
    fd68:	00 
    fd69:	c7 44 24 08 5e 2b 01 	movl   $0x12b5e,0x8(%esp)
    fd70:	00 
    fd71:	c7 44 24 04 5e 2b 01 	movl   $0x12b5e,0x4(%esp)
    fd78:	00 
    fd79:	c7 04 24 67 2b 01 00 	movl   $0x12b67,(%esp)
    fd80:	e8 45 06 00 00       	call   103ca <assertion_failure>
    fd85:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fd88:	c9                   	leave  
    fd89:	c3                   	ret    

0000fd8a <printl>:
    fd8a:	55                   	push   %ebp
    fd8b:	89 e5                	mov    %esp,%ebp
    fd8d:	81 ec 28 04 00 00    	sub    $0x428,%esp
    fd93:	8d 45 08             	lea    0x8(%ebp),%eax
    fd96:	83 c0 04             	add    $0x4,%eax
    fd99:	89 45 f4             	mov    %eax,-0xc(%ebp)
    fd9c:	8b 45 08             	mov    0x8(%ebp),%eax
    fd9f:	8b 55 f4             	mov    -0xc(%ebp),%edx
    fda2:	89 54 24 08          	mov    %edx,0x8(%esp)
    fda6:	89 44 24 04          	mov    %eax,0x4(%esp)
    fdaa:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    fdb0:	89 04 24             	mov    %eax,(%esp)
    fdb3:	e8 83 00 00 00       	call   fe3b <vsprintf>
    fdb8:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fdbb:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
    fdc1:	89 04 24             	mov    %eax,(%esp)
    fdc4:	e8 61 0c 00 00       	call   10a2a <printx>
    fdc9:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fdcc:	c9                   	leave  
    fdcd:	c3                   	ret    
    fdce:	90                   	nop
    fdcf:	90                   	nop

0000fdd0 <i2a>:
    fdd0:	55                   	push   %ebp
    fdd1:	89 e5                	mov    %esp,%ebp
    fdd3:	83 ec 28             	sub    $0x28,%esp
    fdd6:	8b 45 08             	mov    0x8(%ebp),%eax
    fdd9:	89 c2                	mov    %eax,%edx
    fddb:	c1 fa 1f             	sar    $0x1f,%edx
    fdde:	f7 7d 0c             	idivl  0xc(%ebp)
    fde1:	89 55 f4             	mov    %edx,-0xc(%ebp)
    fde4:	8b 45 08             	mov    0x8(%ebp),%eax
    fde7:	89 c2                	mov    %eax,%edx
    fde9:	c1 fa 1f             	sar    $0x1f,%edx
    fdec:	f7 7d 0c             	idivl  0xc(%ebp)
    fdef:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fdf2:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
    fdf6:	74 19                	je     fe11 <i2a+0x41>
    fdf8:	8b 45 10             	mov    0x10(%ebp),%eax
    fdfb:	89 44 24 08          	mov    %eax,0x8(%esp)
    fdff:	8b 45 0c             	mov    0xc(%ebp),%eax
    fe02:	89 44 24 04          	mov    %eax,0x4(%esp)
    fe06:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fe09:	89 04 24             	mov    %eax,(%esp)
    fe0c:	e8 bf ff ff ff       	call   fdd0 <i2a>
    fe11:	8b 45 10             	mov    0x10(%ebp),%eax
    fe14:	8b 10                	mov    (%eax),%edx
    fe16:	83 7d f4 09          	cmpl   $0x9,-0xc(%ebp)
    fe1a:	7f 08                	jg     fe24 <i2a+0x54>
    fe1c:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fe1f:	83 c0 30             	add    $0x30,%eax
    fe22:	eb 06                	jmp    fe2a <i2a+0x5a>
    fe24:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fe27:	83 c0 37             	add    $0x37,%eax
    fe2a:	88 02                	mov    %al,(%edx)
    fe2c:	83 c2 01             	add    $0x1,%edx
    fe2f:	8b 45 10             	mov    0x10(%ebp),%eax
    fe32:	89 10                	mov    %edx,(%eax)
    fe34:	8b 45 10             	mov    0x10(%ebp),%eax
    fe37:	8b 00                	mov    (%eax),%eax
    fe39:	c9                   	leave  
    fe3a:	c3                   	ret    

0000fe3b <vsprintf>:
    fe3b:	55                   	push   %ebp
    fe3c:	89 e5                	mov    %esp,%ebp
    fe3e:	53                   	push   %ebx
    fe3f:	81 ec 34 04 00 00    	sub    $0x434,%esp
    fe45:	8b 45 10             	mov    0x10(%ebp),%eax
    fe48:	89 45 f0             	mov    %eax,-0x10(%ebp)
    fe4b:	8b 45 08             	mov    0x8(%ebp),%eax
    fe4e:	89 45 f4             	mov    %eax,-0xc(%ebp)
    fe51:	e9 44 02 00 00       	jmp    1009a <vsprintf+0x25f>
    fe56:	8b 45 0c             	mov    0xc(%ebp),%eax
    fe59:	0f b6 00             	movzbl (%eax),%eax
    fe5c:	3c 25                	cmp    $0x25,%al
    fe5e:	74 14                	je     fe74 <vsprintf+0x39>
    fe60:	8b 45 0c             	mov    0xc(%ebp),%eax
    fe63:	0f b6 10             	movzbl (%eax),%edx
    fe66:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fe69:	88 10                	mov    %dl,(%eax)
    fe6b:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    fe6f:	e9 22 02 00 00       	jmp    10096 <vsprintf+0x25b>
    fe74:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
    fe7b:	83 45 0c 01          	addl   $0x1,0xc(%ebp)
    fe7f:	8b 45 0c             	mov    0xc(%ebp),%eax
    fe82:	0f b6 00             	movzbl (%eax),%eax
    fe85:	3c 25                	cmp    $0x25,%al
    fe87:	75 14                	jne    fe9d <vsprintf+0x62>
    fe89:	8b 45 0c             	mov    0xc(%ebp),%eax
    fe8c:	0f b6 10             	movzbl (%eax),%edx
    fe8f:	8b 45 f4             	mov    -0xc(%ebp),%eax
    fe92:	88 10                	mov    %dl,(%eax)
    fe94:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
    fe98:	e9 f9 01 00 00       	jmp    10096 <vsprintf+0x25b>
    fe9d:	8b 45 0c             	mov    0xc(%ebp),%eax
    fea0:	0f b6 00             	movzbl (%eax),%eax
    fea3:	3c 30                	cmp    $0x30,%al
    fea5:	75 0a                	jne    feb1 <vsprintf+0x76>
    fea7:	c6 45 eb 30          	movb   $0x30,-0x15(%ebp)
    feab:	83 45 0c 01          	addl   $0x1,0xc(%ebp)
    feaf:	eb 28                	jmp    fed9 <vsprintf+0x9e>
    feb1:	c6 45 eb 20          	movb   $0x20,-0x15(%ebp)
    feb5:	eb 22                	jmp    fed9 <vsprintf+0x9e>
    feb7:	8b 55 e4             	mov    -0x1c(%ebp),%edx
    feba:	89 d0                	mov    %edx,%eax
    febc:	c1 e0 02             	shl    $0x2,%eax
    febf:	01 d0                	add    %edx,%eax
    fec1:	01 c0                	add    %eax,%eax
    fec3:	89 45 e4             	mov    %eax,-0x1c(%ebp)
    fec6:	8b 45 0c             	mov    0xc(%ebp),%eax
    fec9:	0f b6 00             	movzbl (%eax),%eax
    fecc:	0f be c0             	movsbl %al,%eax
    fecf:	83 e8 30             	sub    $0x30,%eax
    fed2:	01 45 e4             	add    %eax,-0x1c(%ebp)
    fed5:	83 45 0c 01          	addl   $0x1,0xc(%ebp)
    fed9:	8b 45 0c             	mov    0xc(%ebp),%eax
    fedc:	0f b6 00             	movzbl (%eax),%eax
    fedf:	3c 2f                	cmp    $0x2f,%al
    fee1:	76 0a                	jbe    feed <vsprintf+0xb2>
    fee3:	8b 45 0c             	mov    0xc(%ebp),%eax
    fee6:	0f b6 00             	movzbl (%eax),%eax
    fee9:	3c 39                	cmp    $0x39,%al
    feeb:	76 ca                	jbe    feb7 <vsprintf+0x7c>
    feed:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
    fef3:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
    fef9:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
    feff:	c7 44 24 08 00 04 00 	movl   $0x400,0x8(%esp)
    ff06:	00 
    ff07:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
    ff0e:	00 
    ff0f:	89 04 24             	mov    %eax,(%esp)
    ff12:	e8 08 02 00 00       	call   1011f <memset>
    ff17:	8b 45 0c             	mov    0xc(%ebp),%eax
    ff1a:	0f b6 00             	movzbl (%eax),%eax
    ff1d:	0f be c0             	movsbl %al,%eax
    ff20:	83 f8 64             	cmp    $0x64,%eax
    ff23:	74 6d                	je     ff92 <vsprintf+0x157>
    ff25:	83 f8 64             	cmp    $0x64,%eax
    ff28:	7f 0a                	jg     ff34 <vsprintf+0xf9>
    ff2a:	83 f8 63             	cmp    $0x63,%eax
    ff2d:	74 18                	je     ff47 <vsprintf+0x10c>
    ff2f:	e9 dc 00 00 00       	jmp    10010 <vsprintf+0x1d5>
    ff34:	83 f8 73             	cmp    $0x73,%eax
    ff37:	0f 84 9b 00 00 00    	je     ffd8 <vsprintf+0x19d>
    ff3d:	83 f8 78             	cmp    $0x78,%eax
    ff40:	74 25                	je     ff67 <vsprintf+0x12c>
    ff42:	e9 c9 00 00 00       	jmp    10010 <vsprintf+0x1d5>
    ff47:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
    ff4d:	8b 55 f0             	mov    -0x10(%ebp),%edx
    ff50:	0f b6 12             	movzbl (%edx),%edx
    ff53:	88 10                	mov    %dl,(%eax)
    ff55:	83 c0 01             	add    $0x1,%eax
    ff58:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
    ff5e:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
    ff62:	e9 a9 00 00 00       	jmp    10010 <vsprintf+0x1d5>
    ff67:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ff6a:	8b 00                	mov    (%eax),%eax
    ff6c:	89 45 ec             	mov    %eax,-0x14(%ebp)
    ff6f:	8d 85 dc fb ff ff    	lea    -0x424(%ebp),%eax
    ff75:	89 44 24 08          	mov    %eax,0x8(%esp)
    ff79:	c7 44 24 04 10 00 00 	movl   $0x10,0x4(%esp)
    ff80:	00 
    ff81:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ff84:	89 04 24             	mov    %eax,(%esp)
    ff87:	e8 44 fe ff ff       	call   fdd0 <i2a>
    ff8c:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
    ff90:	eb 7e                	jmp    10010 <vsprintf+0x1d5>
    ff92:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ff95:	8b 00                	mov    (%eax),%eax
    ff97:	89 45 ec             	mov    %eax,-0x14(%ebp)
    ff9a:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
    ff9e:	79 15                	jns    ffb5 <vsprintf+0x17a>
    ffa0:	f7 5d ec             	negl   -0x14(%ebp)
    ffa3:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
    ffa9:	c6 00 2d             	movb   $0x2d,(%eax)
    ffac:	83 c0 01             	add    $0x1,%eax
    ffaf:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
    ffb5:	8d 85 dc fb ff ff    	lea    -0x424(%ebp),%eax
    ffbb:	89 44 24 08          	mov    %eax,0x8(%esp)
    ffbf:	c7 44 24 04 0a 00 00 	movl   $0xa,0x4(%esp)
    ffc6:	00 
    ffc7:	8b 45 ec             	mov    -0x14(%ebp),%eax
    ffca:	89 04 24             	mov    %eax,(%esp)
    ffcd:	e8 fe fd ff ff       	call   fdd0 <i2a>
    ffd2:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
    ffd6:	eb 38                	jmp    10010 <vsprintf+0x1d5>
    ffd8:	8b 45 f0             	mov    -0x10(%ebp),%eax
    ffdb:	8b 10                	mov    (%eax),%edx
    ffdd:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
    ffe3:	89 54 24 04          	mov    %edx,0x4(%esp)
    ffe7:	89 04 24             	mov    %eax,(%esp)
    ffea:	e8 57 01 00 00       	call   10146 <strcpy>
    ffef:	8b 9d dc fb ff ff    	mov    -0x424(%ebp),%ebx
    fff5:	8b 45 f0             	mov    -0x10(%ebp),%eax
    fff8:	8b 00                	mov    (%eax),%eax
    fffa:	89 04 24             	mov    %eax,(%esp)
    fffd:	e8 5c 01 00 00       	call   1015e <strlen>
   10002:	8d 04 03             	lea    (%ebx,%eax,1),%eax
   10005:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
   1000b:	83 45 f0 04          	addl   $0x4,-0x10(%ebp)
   1000f:	90                   	nop
   10010:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
   10017:	eb 11                	jmp    1002a <vsprintf+0x1ef>
   10019:	8b 45 f4             	mov    -0xc(%ebp),%eax
   1001c:	0f b6 55 eb          	movzbl -0x15(%ebp),%edx
   10020:	88 10                	mov    %dl,(%eax)
   10022:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
   10026:	83 45 e0 01          	addl   $0x1,-0x20(%ebp)
   1002a:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
   10030:	89 04 24             	mov    %eax,(%esp)
   10033:	e8 26 01 00 00       	call   1015e <strlen>
   10038:	3b 45 e4             	cmp    -0x1c(%ebp),%eax
   1003b:	7d 19                	jge    10056 <vsprintf+0x21b>
   1003d:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
   10043:	89 04 24             	mov    %eax,(%esp)
   10046:	e8 13 01 00 00       	call   1015e <strlen>
   1004b:	8b 55 e4             	mov    -0x1c(%ebp),%edx
   1004e:	89 d1                	mov    %edx,%ecx
   10050:	29 c1                	sub    %eax,%ecx
   10052:	89 c8                	mov    %ecx,%eax
   10054:	eb 05                	jmp    1005b <vsprintf+0x220>
   10056:	b8 00 00 00 00       	mov    $0x0,%eax
   1005b:	3b 45 e0             	cmp    -0x20(%ebp),%eax
   1005e:	7f b9                	jg     10019 <vsprintf+0x1de>
   10060:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
   10066:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
   1006c:	eb 1b                	jmp    10089 <vsprintf+0x24e>
   1006e:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
   10074:	0f b6 08             	movzbl (%eax),%ecx
   10077:	8b 55 f4             	mov    -0xc(%ebp),%edx
   1007a:	88 0a                	mov    %cl,(%edx)
   1007c:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
   10080:	83 c0 01             	add    $0x1,%eax
   10083:	89 85 dc fb ff ff    	mov    %eax,-0x424(%ebp)
   10089:	8b 85 dc fb ff ff    	mov    -0x424(%ebp),%eax
   1008f:	0f b6 00             	movzbl (%eax),%eax
   10092:	84 c0                	test   %al,%al
   10094:	75 d8                	jne    1006e <vsprintf+0x233>
   10096:	83 45 0c 01          	addl   $0x1,0xc(%ebp)
   1009a:	8b 45 0c             	mov    0xc(%ebp),%eax
   1009d:	0f b6 00             	movzbl (%eax),%eax
   100a0:	84 c0                	test   %al,%al
   100a2:	0f 85 ae fd ff ff    	jne    fe56 <vsprintf+0x1b>
   100a8:	8b 45 f4             	mov    -0xc(%ebp),%eax
   100ab:	c6 00 00             	movb   $0x0,(%eax)
   100ae:	8b 55 f4             	mov    -0xc(%ebp),%edx
   100b1:	8b 45 08             	mov    0x8(%ebp),%eax
   100b4:	89 d1                	mov    %edx,%ecx
   100b6:	29 c1                	sub    %eax,%ecx
   100b8:	89 c8                	mov    %ecx,%eax
   100ba:	81 c4 34 04 00 00    	add    $0x434,%esp
   100c0:	5b                   	pop    %ebx
   100c1:	5d                   	pop    %ebp
   100c2:	c3                   	ret    

000100c3 <sprintf>:
   100c3:	55                   	push   %ebp
   100c4:	89 e5                	mov    %esp,%ebp
   100c6:	83 ec 28             	sub    $0x28,%esp
   100c9:	8d 45 0c             	lea    0xc(%ebp),%eax
   100cc:	83 c0 04             	add    $0x4,%eax
   100cf:	89 45 f4             	mov    %eax,-0xc(%ebp)
   100d2:	8b 45 0c             	mov    0xc(%ebp),%eax
   100d5:	8b 55 f4             	mov    -0xc(%ebp),%edx
   100d8:	89 54 24 08          	mov    %edx,0x8(%esp)
   100dc:	89 44 24 04          	mov    %eax,0x4(%esp)
   100e0:	8b 45 08             	mov    0x8(%ebp),%eax
   100e3:	89 04 24             	mov    %eax,(%esp)
   100e6:	e8 50 fd ff ff       	call   fe3b <vsprintf>
   100eb:	c9                   	leave  
   100ec:	c3                   	ret    
   100ed:	90                   	nop
   100ee:	90                   	nop
   100ef:	90                   	nop

000100f0 <memcpy>:
   100f0:	55                   	push   %ebp
   100f1:	89 e5                	mov    %esp,%ebp
   100f3:	56                   	push   %esi
   100f4:	57                   	push   %edi
   100f5:	51                   	push   %ecx
   100f6:	8b 7d 08             	mov    0x8(%ebp),%edi
   100f9:	8b 75 0c             	mov    0xc(%ebp),%esi
   100fc:	8b 4d 10             	mov    0x10(%ebp),%ecx

000100ff <memcpy.1>:
   100ff:	81 f9 00 00 00 00    	cmp    $0x0,%ecx
   10105:	74 0e                	je     10115 <memcpy.2>
   10107:	3e 8a 06             	mov    %ds:(%esi),%al
   1010a:	46                   	inc    %esi
   1010b:	26 88 07             	mov    %al,%es:(%edi)
   1010e:	47                   	inc    %edi
   1010f:	49                   	dec    %ecx
   10110:	e9 ea ff ff ff       	jmp    100ff <memcpy.1>

00010115 <memcpy.2>:
   10115:	8b 45 08             	mov    0x8(%ebp),%eax
   10118:	59                   	pop    %ecx
   10119:	5f                   	pop    %edi
   1011a:	5e                   	pop    %esi
   1011b:	89 ec                	mov    %ebp,%esp
   1011d:	5d                   	pop    %ebp
   1011e:	c3                   	ret    

0001011f <memset>:
   1011f:	55                   	push   %ebp
   10120:	89 e5                	mov    %esp,%ebp
   10122:	56                   	push   %esi
   10123:	57                   	push   %edi
   10124:	51                   	push   %ecx
   10125:	8b 7d 08             	mov    0x8(%ebp),%edi
   10128:	8b 55 0c             	mov    0xc(%ebp),%edx
   1012b:	8b 4d 10             	mov    0x10(%ebp),%ecx

0001012e <memset.1>:
   1012e:	81 f9 00 00 00 00    	cmp    $0x0,%ecx
   10134:	74 09                	je     1013f <memset.2>
   10136:	88 17                	mov    %dl,(%edi)
   10138:	47                   	inc    %edi
   10139:	49                   	dec    %ecx
   1013a:	e9 ef ff ff ff       	jmp    1012e <memset.1>

0001013f <memset.2>:
   1013f:	59                   	pop    %ecx
   10140:	5f                   	pop    %edi
   10141:	5e                   	pop    %esi
   10142:	89 ec                	mov    %ebp,%esp
   10144:	5d                   	pop    %ebp
   10145:	c3                   	ret    

00010146 <strcpy>:
   10146:	55                   	push   %ebp
   10147:	89 e5                	mov    %esp,%ebp
   10149:	8b 75 0c             	mov    0xc(%ebp),%esi
   1014c:	8b 7d 08             	mov    0x8(%ebp),%edi

0001014f <strcpy.1>:
   1014f:	8a 06                	mov    (%esi),%al
   10151:	46                   	inc    %esi
   10152:	88 07                	mov    %al,(%edi)
   10154:	47                   	inc    %edi
   10155:	3c 00                	cmp    $0x0,%al
   10157:	75 f6                	jne    1014f <strcpy.1>
   10159:	8b 45 08             	mov    0x8(%ebp),%eax
   1015c:	5d                   	pop    %ebp
   1015d:	c3                   	ret    

0001015e <strlen>:
   1015e:	55                   	push   %ebp
   1015f:	89 e5                	mov    %esp,%ebp
   10161:	b8 00 00 00 00       	mov    $0x0,%eax
   10166:	8b 75 08             	mov    0x8(%ebp),%esi

00010169 <strlen.1>:
   10169:	80 3e 00             	cmpb   $0x0,(%esi)
   1016c:	74 07                	je     10175 <strlen.2>
   1016e:	46                   	inc    %esi
   1016f:	40                   	inc    %eax
   10170:	e9 f4 ff ff ff       	jmp    10169 <strlen.1>

00010175 <strlen.2>:
   10175:	5d                   	pop    %ebp
   10176:	c3                   	ret    
   10177:	90                   	nop

00010178 <send_recv>:
   10178:	55                   	push   %ebp
   10179:	89 e5                	mov    %esp,%ebp
   1017b:	83 ec 28             	sub    $0x28,%esp
   1017e:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
   10185:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
   10189:	75 1b                	jne    101a6 <send_recv+0x2e>
   1018b:	c7 44 24 08 30 00 00 	movl   $0x30,0x8(%esp)
   10192:	00 
   10193:	c7 44 24 04 00 00 00 	movl   $0x0,0x4(%esp)
   1019a:	00 
   1019b:	8b 45 10             	mov    0x10(%ebp),%eax
   1019e:	89 04 24             	mov    %eax,(%esp)
   101a1:	e8 79 ff ff ff       	call   1011f <memset>
   101a6:	8b 45 08             	mov    0x8(%ebp),%eax
   101a9:	83 f8 01             	cmp    $0x1,%eax
   101ac:	7c 6a                	jl     10218 <send_recv+0xa0>
   101ae:	83 f8 02             	cmp    $0x2,%eax
   101b1:	7e 47                	jle    101fa <send_recv+0x82>
   101b3:	83 f8 03             	cmp    $0x3,%eax
   101b6:	75 60                	jne    10218 <send_recv+0xa0>
   101b8:	8b 45 10             	mov    0x10(%ebp),%eax
   101bb:	89 44 24 08          	mov    %eax,0x8(%esp)
   101bf:	8b 45 0c             	mov    0xc(%ebp),%eax
   101c2:	89 44 24 04          	mov    %eax,0x4(%esp)
   101c6:	c7 04 24 01 00 00 00 	movl   $0x1,(%esp)
   101cd:	e8 3e 08 00 00       	call   10a10 <sendrec>
   101d2:	89 45 f4             	mov    %eax,-0xc(%ebp)
   101d5:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
   101d9:	75 75                	jne    10250 <send_recv+0xd8>
   101db:	8b 45 10             	mov    0x10(%ebp),%eax
   101de:	89 44 24 08          	mov    %eax,0x8(%esp)
   101e2:	8b 45 0c             	mov    0xc(%ebp),%eax
   101e5:	89 44 24 04          	mov    %eax,0x4(%esp)
   101e9:	c7 04 24 02 00 00 00 	movl   $0x2,(%esp)
   101f0:	e8 1b 08 00 00       	call   10a10 <sendrec>
   101f5:	89 45 f4             	mov    %eax,-0xc(%ebp)
   101f8:	eb 60                	jmp    1025a <send_recv+0xe2>
   101fa:	8b 45 10             	mov    0x10(%ebp),%eax
   101fd:	89 44 24 08          	mov    %eax,0x8(%esp)
   10201:	8b 45 0c             	mov    0xc(%ebp),%eax
   10204:	89 44 24 04          	mov    %eax,0x4(%esp)
   10208:	8b 45 08             	mov    0x8(%ebp),%eax
   1020b:	89 04 24             	mov    %eax,(%esp)
   1020e:	e8 fd 07 00 00       	call   10a10 <sendrec>
   10213:	89 45 f4             	mov    %eax,-0xc(%ebp)
   10216:	eb 42                	jmp    1025a <send_recv+0xe2>
   10218:	83 7d 08 03          	cmpl   $0x3,0x8(%ebp)
   1021c:	74 35                	je     10253 <send_recv+0xdb>
   1021e:	83 7d 08 01          	cmpl   $0x1,0x8(%ebp)
   10222:	74 32                	je     10256 <send_recv+0xde>
   10224:	83 7d 08 02          	cmpl   $0x2,0x8(%ebp)
   10228:	74 2f                	je     10259 <send_recv+0xe1>
   1022a:	c7 44 24 0c 40 00 00 	movl   $0x40,0xc(%esp)
   10231:	00 
   10232:	c7 44 24 08 70 2b 01 	movl   $0x12b70,0x8(%esp)
   10239:	00 
   1023a:	c7 44 24 04 70 2b 01 	movl   $0x12b70,0x4(%esp)
   10241:	00 
   10242:	c7 04 24 78 2b 01 00 	movl   $0x12b78,(%esp)
   10249:	e8 7c 01 00 00       	call   103ca <assertion_failure>
   1024e:	eb 0a                	jmp    1025a <send_recv+0xe2>
   10250:	90                   	nop
   10251:	eb 07                	jmp    1025a <send_recv+0xe2>
   10253:	90                   	nop
   10254:	eb 04                	jmp    1025a <send_recv+0xe2>
   10256:	90                   	nop
   10257:	eb 01                	jmp    1025a <send_recv+0xe2>
   10259:	90                   	nop
   1025a:	8b 45 f4             	mov    -0xc(%ebp),%eax
   1025d:	c9                   	leave  
   1025e:	c3                   	ret    

0001025f <memcmp>:
   1025f:	55                   	push   %ebp
   10260:	89 e5                	mov    %esp,%ebp
   10262:	83 ec 10             	sub    $0x10,%esp
   10265:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
   10269:	74 06                	je     10271 <memcmp+0x12>
   1026b:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
   1026f:	75 0e                	jne    1027f <memcmp+0x20>
   10271:	8b 55 08             	mov    0x8(%ebp),%edx
   10274:	8b 45 0c             	mov    0xc(%ebp),%eax
   10277:	89 d1                	mov    %edx,%ecx
   10279:	29 c1                	sub    %eax,%ecx
   1027b:	89 c8                	mov    %ecx,%eax
   1027d:	eb 58                	jmp    102d7 <memcmp+0x78>
   1027f:	8b 45 08             	mov    0x8(%ebp),%eax
   10282:	89 45 fc             	mov    %eax,-0x4(%ebp)
   10285:	8b 45 0c             	mov    0xc(%ebp),%eax
   10288:	89 45 f8             	mov    %eax,-0x8(%ebp)
   1028b:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
   10292:	eb 36                	jmp    102ca <memcmp+0x6b>
   10294:	8b 45 fc             	mov    -0x4(%ebp),%eax
   10297:	0f b6 10             	movzbl (%eax),%edx
   1029a:	8b 45 f8             	mov    -0x8(%ebp),%eax
   1029d:	0f b6 00             	movzbl (%eax),%eax
   102a0:	38 c2                	cmp    %al,%dl
   102a2:	74 1a                	je     102be <memcmp+0x5f>
   102a4:	8b 45 fc             	mov    -0x4(%ebp),%eax
   102a7:	0f b6 00             	movzbl (%eax),%eax
   102aa:	0f be d0             	movsbl %al,%edx
   102ad:	8b 45 f8             	mov    -0x8(%ebp),%eax
   102b0:	0f b6 00             	movzbl (%eax),%eax
   102b3:	0f be c0             	movsbl %al,%eax
   102b6:	89 d1                	mov    %edx,%ecx
   102b8:	29 c1                	sub    %eax,%ecx
   102ba:	89 c8                	mov    %ecx,%eax
   102bc:	eb 19                	jmp    102d7 <memcmp+0x78>
   102be:	83 45 f4 01          	addl   $0x1,-0xc(%ebp)
   102c2:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
   102c6:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
   102ca:	8b 45 f4             	mov    -0xc(%ebp),%eax
   102cd:	3b 45 10             	cmp    0x10(%ebp),%eax
   102d0:	7c c2                	jl     10294 <memcmp+0x35>
   102d2:	b8 00 00 00 00       	mov    $0x0,%eax
   102d7:	c9                   	leave  
   102d8:	c3                   	ret    

000102d9 <strcmp>:
   102d9:	55                   	push   %ebp
   102da:	89 e5                	mov    %esp,%ebp
   102dc:	83 ec 10             	sub    $0x10,%esp
   102df:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
   102e3:	74 06                	je     102eb <strcmp+0x12>
   102e5:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
   102e9:	75 0e                	jne    102f9 <strcmp+0x20>
   102eb:	8b 55 08             	mov    0x8(%ebp),%edx
   102ee:	8b 45 0c             	mov    0xc(%ebp),%eax
   102f1:	89 d1                	mov    %edx,%ecx
   102f3:	29 c1                	sub    %eax,%ecx
   102f5:	89 c8                	mov    %ecx,%eax
   102f7:	eb 55                	jmp    1034e <strcmp+0x75>
   102f9:	8b 45 08             	mov    0x8(%ebp),%eax
   102fc:	89 45 fc             	mov    %eax,-0x4(%ebp)
   102ff:	8b 45 0c             	mov    0xc(%ebp),%eax
   10302:	89 45 f8             	mov    %eax,-0x8(%ebp)
   10305:	eb 18                	jmp    1031f <strcmp+0x46>
   10307:	8b 45 fc             	mov    -0x4(%ebp),%eax
   1030a:	0f b6 10             	movzbl (%eax),%edx
   1030d:	8b 45 f8             	mov    -0x8(%ebp),%eax
   10310:	0f b6 00             	movzbl (%eax),%eax
   10313:	38 c2                	cmp    %al,%dl
   10315:	75 1e                	jne    10335 <strcmp+0x5c>
   10317:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
   1031b:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
   1031f:	8b 45 fc             	mov    -0x4(%ebp),%eax
   10322:	0f b6 00             	movzbl (%eax),%eax
   10325:	84 c0                	test   %al,%al
   10327:	74 0d                	je     10336 <strcmp+0x5d>
   10329:	8b 45 f8             	mov    -0x8(%ebp),%eax
   1032c:	0f b6 00             	movzbl (%eax),%eax
   1032f:	84 c0                	test   %al,%al
   10331:	75 d4                	jne    10307 <strcmp+0x2e>
   10333:	eb 01                	jmp    10336 <strcmp+0x5d>
   10335:	90                   	nop
   10336:	8b 45 fc             	mov    -0x4(%ebp),%eax
   10339:	0f b6 00             	movzbl (%eax),%eax
   1033c:	0f be d0             	movsbl %al,%edx
   1033f:	8b 45 f8             	mov    -0x8(%ebp),%eax
   10342:	0f b6 00             	movzbl (%eax),%eax
   10345:	0f be c0             	movsbl %al,%eax
   10348:	89 d1                	mov    %edx,%ecx
   1034a:	29 c1                	sub    %eax,%ecx
   1034c:	89 c8                	mov    %ecx,%eax
   1034e:	c9                   	leave  
   1034f:	c3                   	ret    

00010350 <strcat>:
   10350:	55                   	push   %ebp
   10351:	89 e5                	mov    %esp,%ebp
   10353:	83 ec 10             	sub    $0x10,%esp
   10356:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
   1035a:	74 06                	je     10362 <strcat+0x12>
   1035c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
   10360:	75 07                	jne    10369 <strcat+0x19>
   10362:	b8 00 00 00 00       	mov    $0x0,%eax
   10367:	eb 44                	jmp    103ad <strcat+0x5d>
   10369:	8b 45 08             	mov    0x8(%ebp),%eax
   1036c:	89 45 fc             	mov    %eax,-0x4(%ebp)
   1036f:	eb 04                	jmp    10375 <strcat+0x25>
   10371:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
   10375:	8b 45 fc             	mov    -0x4(%ebp),%eax
   10378:	0f b6 00             	movzbl (%eax),%eax
   1037b:	84 c0                	test   %al,%al
   1037d:	75 f2                	jne    10371 <strcat+0x21>
   1037f:	8b 45 0c             	mov    0xc(%ebp),%eax
   10382:	89 45 f8             	mov    %eax,-0x8(%ebp)
   10385:	eb 13                	jmp    1039a <strcat+0x4a>
   10387:	8b 45 f8             	mov    -0x8(%ebp),%eax
   1038a:	0f b6 10             	movzbl (%eax),%edx
   1038d:	8b 45 fc             	mov    -0x4(%ebp),%eax
   10390:	88 10                	mov    %dl,(%eax)
   10392:	83 45 fc 01          	addl   $0x1,-0x4(%ebp)
   10396:	83 45 f8 01          	addl   $0x1,-0x8(%ebp)
   1039a:	8b 45 f8             	mov    -0x8(%ebp),%eax
   1039d:	0f b6 00             	movzbl (%eax),%eax
   103a0:	84 c0                	test   %al,%al
   103a2:	75 e3                	jne    10387 <strcat+0x37>
   103a4:	8b 45 fc             	mov    -0x4(%ebp),%eax
   103a7:	c6 00 00             	movb   $0x0,(%eax)
   103aa:	8b 45 08             	mov    0x8(%ebp),%eax
   103ad:	c9                   	leave  
   103ae:	c3                   	ret    

000103af <spin>:
   103af:	55                   	push   %ebp
   103b0:	89 e5                	mov    %esp,%ebp
   103b2:	83 ec 18             	sub    $0x18,%esp
   103b5:	8b 45 08             	mov    0x8(%ebp),%eax
   103b8:	89 44 24 04          	mov    %eax,0x4(%esp)
   103bc:	c7 04 24 ba 2b 01 00 	movl   $0x12bba,(%esp)
   103c3:	e8 c2 f9 ff ff       	call   fd8a <printl>
   103c8:	eb fe                	jmp    103c8 <spin+0x19>

000103ca <assertion_failure>:
   103ca:	55                   	push   %ebp
   103cb:	89 e5                	mov    %esp,%ebp
   103cd:	5d                   	pop    %ebp
   103ce:	c3                   	ret    
   103cf:	90                   	nop

000103d0 <open>:
   103d0:	55                   	push   %ebp
   103d1:	89 e5                	mov    %esp,%ebp
   103d3:	83 ec 48             	sub    $0x48,%esp
   103d6:	c7 45 cc 0f 00 00 00 	movl   $0xf,-0x34(%ebp)
   103dd:	8b 45 08             	mov    0x8(%ebp),%eax
   103e0:	89 45 f0             	mov    %eax,-0x10(%ebp)
   103e3:	8b 45 0c             	mov    0xc(%ebp),%eax
   103e6:	89 45 d0             	mov    %eax,-0x30(%ebp)
   103e9:	8b 45 08             	mov    0x8(%ebp),%eax
   103ec:	89 04 24             	mov    %eax,(%esp)
   103ef:	e8 6a fd ff ff       	call   1015e <strlen>
   103f4:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   103f7:	8d 45 c8             	lea    -0x38(%ebp),%eax
   103fa:	89 44 24 08          	mov    %eax,0x8(%esp)
   103fe:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10405:	00 
   10406:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1040d:	e8 66 fd ff ff       	call   10178 <send_recv>
   10412:	8b 45 cc             	mov    -0x34(%ebp),%eax
   10415:	83 f8 2d             	cmp    $0x2d,%eax
   10418:	74 24                	je     1043e <open+0x6e>
   1041a:	c7 44 24 0c 33 00 00 	movl   $0x33,0xc(%esp)
   10421:	00 
   10422:	c7 44 24 08 cf 2b 01 	movl   $0x12bcf,0x8(%esp)
   10429:	00 
   1042a:	c7 44 24 04 cf 2b 01 	movl   $0x12bcf,0x4(%esp)
   10431:	00 
   10432:	c7 04 24 d6 2b 01 00 	movl   $0x12bd6,(%esp)
   10439:	e8 8c ff ff ff       	call   103ca <assertion_failure>
   1043e:	8b 45 d0             	mov    -0x30(%ebp),%eax
   10441:	c9                   	leave  
   10442:	c3                   	ret    

00010443 <mkdir>:
   10443:	55                   	push   %ebp
   10444:	89 e5                	mov    %esp,%ebp
   10446:	83 ec 48             	sub    $0x48,%esp
   10449:	c7 45 cc 18 00 00 00 	movl   $0x18,-0x34(%ebp)
   10450:	8b 45 08             	mov    0x8(%ebp),%eax
   10453:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10456:	8b 45 08             	mov    0x8(%ebp),%eax
   10459:	89 04 24             	mov    %eax,(%esp)
   1045c:	e8 fd fc ff ff       	call   1015e <strlen>
   10461:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   10464:	8d 45 c8             	lea    -0x38(%ebp),%eax
   10467:	89 44 24 08          	mov    %eax,0x8(%esp)
   1046b:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10472:	00 
   10473:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1047a:	e8 f9 fc ff ff       	call   10178 <send_recv>
   1047f:	8b 45 cc             	mov    -0x34(%ebp),%eax
   10482:	83 f8 2d             	cmp    $0x2d,%eax
   10485:	74 24                	je     104ab <mkdir+0x68>
   10487:	c7 44 24 0c 42 00 00 	movl   $0x42,0xc(%esp)
   1048e:	00 
   1048f:	c7 44 24 08 cf 2b 01 	movl   $0x12bcf,0x8(%esp)
   10496:	00 
   10497:	c7 44 24 04 cf 2b 01 	movl   $0x12bcf,0x4(%esp)
   1049e:	00 
   1049f:	c7 04 24 d6 2b 01 00 	movl   $0x12bd6,(%esp)
   104a6:	e8 1f ff ff ff       	call   103ca <assertion_failure>
   104ab:	b8 00 00 00 00       	mov    $0x0,%eax
   104b0:	c9                   	leave  
   104b1:	c3                   	ret    
   104b2:	90                   	nop
   104b3:	90                   	nop

000104b4 <read>:
   104b4:	55                   	push   %ebp
   104b5:	89 e5                	mov    %esp,%ebp
   104b7:	83 ec 48             	sub    $0x48,%esp
   104ba:	c7 45 cc 11 00 00 00 	movl   $0x11,-0x34(%ebp)
   104c1:	8b 45 08             	mov    0x8(%ebp),%eax
   104c4:	89 45 d0             	mov    %eax,-0x30(%ebp)
   104c7:	8b 45 0c             	mov    0xc(%ebp),%eax
   104ca:	89 45 f4             	mov    %eax,-0xc(%ebp)
   104cd:	8b 45 10             	mov    0x10(%ebp),%eax
   104d0:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   104d3:	8d 45 c8             	lea    -0x38(%ebp),%eax
   104d6:	89 44 24 08          	mov    %eax,0x8(%esp)
   104da:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   104e1:	00 
   104e2:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   104e9:	e8 8a fc ff ff       	call   10178 <send_recv>
   104ee:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   104f1:	c9                   	leave  
   104f2:	c3                   	ret    
   104f3:	90                   	nop

000104f4 <write>:
   104f4:	55                   	push   %ebp
   104f5:	89 e5                	mov    %esp,%ebp
   104f7:	83 ec 48             	sub    $0x48,%esp
   104fa:	c7 45 cc 12 00 00 00 	movl   $0x12,-0x34(%ebp)
   10501:	8b 45 08             	mov    0x8(%ebp),%eax
   10504:	89 45 d0             	mov    %eax,-0x30(%ebp)
   10507:	8b 45 0c             	mov    0xc(%ebp),%eax
   1050a:	89 45 f4             	mov    %eax,-0xc(%ebp)
   1050d:	8b 45 10             	mov    0x10(%ebp),%eax
   10510:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   10513:	8d 45 c8             	lea    -0x38(%ebp),%eax
   10516:	89 44 24 08          	mov    %eax,0x8(%esp)
   1051a:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10521:	00 
   10522:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   10529:	e8 4a fc ff ff       	call   10178 <send_recv>
   1052e:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   10531:	c9                   	leave  
   10532:	c3                   	ret    
   10533:	90                   	nop

00010534 <close>:
   10534:	55                   	push   %ebp
   10535:	89 e5                	mov    %esp,%ebp
   10537:	83 ec 48             	sub    $0x48,%esp
   1053a:	c7 45 cc 10 00 00 00 	movl   $0x10,-0x34(%ebp)
   10541:	8b 45 08             	mov    0x8(%ebp),%eax
   10544:	89 45 d0             	mov    %eax,-0x30(%ebp)
   10547:	8d 45 c8             	lea    -0x38(%ebp),%eax
   1054a:	89 44 24 08          	mov    %eax,0x8(%esp)
   1054e:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10555:	00 
   10556:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1055d:	e8 16 fc ff ff       	call   10178 <send_recv>
   10562:	8b 45 d0             	mov    -0x30(%ebp),%eax
   10565:	c9                   	leave  
   10566:	c3                   	ret    
   10567:	90                   	nop

00010568 <lseek>:
   10568:	55                   	push   %ebp
   10569:	89 e5                	mov    %esp,%ebp
   1056b:	83 ec 48             	sub    $0x48,%esp
   1056e:	c7 45 cc 13 00 00 00 	movl   $0x13,-0x34(%ebp)
   10575:	8b 45 08             	mov    0x8(%ebp),%eax
   10578:	89 45 d0             	mov    %eax,-0x30(%ebp)
   1057b:	8b 45 0c             	mov    0xc(%ebp),%eax
   1057e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   10581:	8b 45 10             	mov    0x10(%ebp),%eax
   10584:	89 45 d8             	mov    %eax,-0x28(%ebp)
   10587:	8d 45 c8             	lea    -0x38(%ebp),%eax
   1058a:	89 44 24 08          	mov    %eax,0x8(%esp)
   1058e:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10595:	00 
   10596:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1059d:	e8 d6 fb ff ff       	call   10178 <send_recv>
   105a2:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   105a5:	c9                   	leave  
   105a6:	c3                   	ret    
   105a7:	90                   	nop

000105a8 <getpid>:
   105a8:	55                   	push   %ebp
   105a9:	89 e5                	mov    %esp,%ebp
   105ab:	83 ec 48             	sub    $0x48,%esp
   105ae:	c7 45 cc 03 00 00 00 	movl   $0x3,-0x34(%ebp)
   105b5:	8d 45 c8             	lea    -0x38(%ebp),%eax
   105b8:	89 44 24 08          	mov    %eax,0x8(%esp)
   105bc:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
   105c3:	00 
   105c4:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   105cb:	e8 a8 fb ff ff       	call   10178 <send_recv>
   105d0:	8b 45 cc             	mov    -0x34(%ebp),%eax
   105d3:	83 f8 2d             	cmp    $0x2d,%eax
   105d6:	74 24                	je     105fc <getpid+0x54>
   105d8:	c7 44 24 0c 2b 00 00 	movl   $0x2b,0xc(%esp)
   105df:	00 
   105e0:	c7 44 24 08 ee 2b 01 	movl   $0x12bee,0x8(%esp)
   105e7:	00 
   105e8:	c7 44 24 04 ee 2b 01 	movl   $0x12bee,0x4(%esp)
   105ef:	00 
   105f0:	c7 04 24 f7 2b 01 00 	movl   $0x12bf7,(%esp)
   105f7:	e8 ce fd ff ff       	call   103ca <assertion_failure>
   105fc:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   105ff:	c9                   	leave  
   10600:	c3                   	ret    
   10601:	90                   	nop
   10602:	90                   	nop
   10603:	90                   	nop

00010604 <stat>:
   10604:	55                   	push   %ebp
   10605:	89 e5                	mov    %esp,%ebp
   10607:	83 ec 48             	sub    $0x48,%esp
   1060a:	c7 45 cc 14 00 00 00 	movl   $0x14,-0x34(%ebp)
   10611:	8b 45 08             	mov    0x8(%ebp),%eax
   10614:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10617:	8b 45 0c             	mov    0xc(%ebp),%eax
   1061a:	89 45 f4             	mov    %eax,-0xc(%ebp)
   1061d:	8b 45 08             	mov    0x8(%ebp),%eax
   10620:	89 04 24             	mov    %eax,(%esp)
   10623:	e8 36 fb ff ff       	call   1015e <strlen>
   10628:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   1062b:	8d 45 c8             	lea    -0x38(%ebp),%eax
   1062e:	89 44 24 08          	mov    %eax,0x8(%esp)
   10632:	c7 44 24 04 03 00 00 	movl   $0x3,0x4(%esp)
   10639:	00 
   1063a:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   10641:	e8 32 fb ff ff       	call   10178 <send_recv>
   10646:	8b 45 cc             	mov    -0x34(%ebp),%eax
   10649:	83 f8 2d             	cmp    $0x2d,%eax
   1064c:	74 24                	je     10672 <stat+0x6e>
   1064e:	c7 44 24 0c 33 00 00 	movl   $0x33,0xc(%esp)
   10655:	00 
   10656:	c7 44 24 08 0f 2c 01 	movl   $0x12c0f,0x8(%esp)
   1065d:	00 
   1065e:	c7 44 24 04 0f 2c 01 	movl   $0x12c0f,0x4(%esp)
   10665:	00 
   10666:	c7 04 24 16 2c 01 00 	movl   $0x12c16,(%esp)
   1066d:	e8 58 fd ff ff       	call   103ca <assertion_failure>
   10672:	8b 45 d0             	mov    -0x30(%ebp),%eax
   10675:	c9                   	leave  
   10676:	c3                   	ret    
   10677:	90                   	nop

00010678 <fork>:
   10678:	55                   	push   %ebp
   10679:	89 e5                	mov    %esp,%ebp
   1067b:	83 ec 48             	sub    $0x48,%esp
   1067e:	c7 45 cc 2b 00 00 00 	movl   $0x2b,-0x34(%ebp)
   10685:	8d 45 c8             	lea    -0x38(%ebp),%eax
   10688:	89 44 24 08          	mov    %eax,0x8(%esp)
   1068c:	c7 44 24 04 04 00 00 	movl   $0x4,0x4(%esp)
   10693:	00 
   10694:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1069b:	e8 d8 fa ff ff       	call   10178 <send_recv>
   106a0:	8b 45 cc             	mov    -0x34(%ebp),%eax
   106a3:	83 f8 2d             	cmp    $0x2d,%eax
   106a6:	74 24                	je     106cc <fork+0x54>
   106a8:	c7 44 24 0c 30 00 00 	movl   $0x30,0xc(%esp)
   106af:	00 
   106b0:	c7 44 24 08 2e 2c 01 	movl   $0x12c2e,0x8(%esp)
   106b7:	00 
   106b8:	c7 44 24 04 2e 2c 01 	movl   $0x12c2e,0x4(%esp)
   106bf:	00 
   106c0:	c7 04 24 35 2c 01 00 	movl   $0x12c35,(%esp)
   106c7:	e8 fe fc ff ff       	call   103ca <assertion_failure>
   106cc:	8b 45 d0             	mov    -0x30(%ebp),%eax
   106cf:	85 c0                	test   %eax,%eax
   106d1:	74 24                	je     106f7 <fork+0x7f>
   106d3:	c7 44 24 0c 31 00 00 	movl   $0x31,0xc(%esp)
   106da:	00 
   106db:	c7 44 24 08 2e 2c 01 	movl   $0x12c2e,0x8(%esp)
   106e2:	00 
   106e3:	c7 44 24 04 2e 2c 01 	movl   $0x12c2e,0x4(%esp)
   106ea:	00 
   106eb:	c7 04 24 4d 2c 01 00 	movl   $0x12c4d,(%esp)
   106f2:	e8 d3 fc ff ff       	call   103ca <assertion_failure>
   106f7:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   106fa:	c9                   	leave  
   106fb:	c3                   	ret    

000106fc <wait>:
   106fc:	55                   	push   %ebp
   106fd:	89 e5                	mov    %esp,%ebp
   106ff:	83 ec 48             	sub    $0x48,%esp
   10702:	c7 45 cc 1e 00 00 00 	movl   $0x1e,-0x34(%ebp)
   10709:	8d 45 c8             	lea    -0x38(%ebp),%eax
   1070c:	89 44 24 08          	mov    %eax,0x8(%esp)
   10710:	c7 44 24 04 04 00 00 	movl   $0x4,0x4(%esp)
   10717:	00 
   10718:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   1071f:	e8 54 fa ff ff       	call   10178 <send_recv>
   10724:	8b 55 d0             	mov    -0x30(%ebp),%edx
   10727:	8b 45 08             	mov    0x8(%ebp),%eax
   1072a:	89 10                	mov    %edx,(%eax)
   1072c:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   1072f:	83 f8 3e             	cmp    $0x3e,%eax
   10732:	74 05                	je     10739 <wait+0x3d>
   10734:	8b 45 d4             	mov    -0x2c(%ebp),%eax
   10737:	eb 05                	jmp    1073e <wait+0x42>
   10739:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
   1073e:	c9                   	leave  
   1073f:	c3                   	ret    

00010740 <exec>:
   10740:	55                   	push   %ebp
   10741:	89 e5                	mov    %esp,%ebp
   10743:	83 ec 48             	sub    $0x48,%esp
   10746:	c7 45 cc 1d 00 00 00 	movl   $0x1d,-0x34(%ebp)
   1074d:	8b 45 08             	mov    0x8(%ebp),%eax
   10750:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10753:	8b 45 08             	mov    0x8(%ebp),%eax
   10756:	89 04 24             	mov    %eax,(%esp)
   10759:	e8 00 fa ff ff       	call   1015e <strlen>
   1075e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
   10761:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
   10768:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
   1076f:	8d 45 c8             	lea    -0x38(%ebp),%eax
   10772:	89 44 24 08          	mov    %eax,0x8(%esp)
   10776:	c7 44 24 04 04 00 00 	movl   $0x4,0x4(%esp)
   1077d:	00 
   1077e:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   10785:	e8 ee f9 ff ff       	call   10178 <send_recv>
   1078a:	8b 45 cc             	mov    -0x34(%ebp),%eax
   1078d:	83 f8 2d             	cmp    $0x2d,%eax
   10790:	74 24                	je     107b6 <exec+0x76>
   10792:	c7 44 24 0c 31 00 00 	movl   $0x31,0xc(%esp)
   10799:	00 
   1079a:	c7 44 24 08 60 2c 01 	movl   $0x12c60,0x8(%esp)
   107a1:	00 
   107a2:	c7 44 24 04 60 2c 01 	movl   $0x12c60,0x4(%esp)
   107a9:	00 
   107aa:	c7 04 24 67 2c 01 00 	movl   $0x12c67,(%esp)
   107b1:	e8 14 fc ff ff       	call   103ca <assertion_failure>
   107b6:	8b 45 d0             	mov    -0x30(%ebp),%eax
   107b9:	c9                   	leave  
   107ba:	c3                   	ret    

000107bb <execl>:
   107bb:	55                   	push   %ebp
   107bc:	89 e5                	mov    %esp,%ebp
   107be:	83 ec 28             	sub    $0x28,%esp
   107c1:	8d 45 0c             	lea    0xc(%ebp),%eax
   107c4:	89 45 f4             	mov    %eax,-0xc(%ebp)
   107c7:	8b 45 f4             	mov    -0xc(%ebp),%eax
   107ca:	89 45 f0             	mov    %eax,-0x10(%ebp)
   107cd:	8b 45 f0             	mov    -0x10(%ebp),%eax
   107d0:	89 44 24 04          	mov    %eax,0x4(%esp)
   107d4:	8b 45 08             	mov    0x8(%ebp),%eax
   107d7:	89 04 24             	mov    %eax,(%esp)
   107da:	e8 02 00 00 00       	call   107e1 <execv>
   107df:	c9                   	leave  
   107e0:	c3                   	ret    

000107e1 <execv>:
   107e1:	55                   	push   %ebp
   107e2:	89 e5                	mov    %esp,%ebp
   107e4:	81 ec 58 04 00 00    	sub    $0x458,%esp
   107ea:	8b 45 0c             	mov    0xc(%ebp),%eax
   107ed:	89 45 f4             	mov    %eax,-0xc(%ebp)
   107f0:	c7 45 f0 00 00 00 00 	movl   $0x0,-0x10(%ebp)
   107f7:	eb 3a                	jmp    10833 <execv+0x52>
   107f9:	8b 45 f0             	mov    -0x10(%ebp),%eax
   107fc:	83 c0 08             	add    $0x8,%eax
   107ff:	3d ff 03 00 00       	cmp    $0x3ff,%eax
   10804:	76 24                	jbe    1082a <execv+0x49>
   10806:	c7 44 24 0c 4a 00 00 	movl   $0x4a,0xc(%esp)
   1080d:	00 
   1080e:	c7 44 24 08 60 2c 01 	movl   $0x12c60,0x8(%esp)
   10815:	00 
   10816:	c7 44 24 04 60 2c 01 	movl   $0x12c60,0x4(%esp)
   1081d:	00 
   1081e:	c7 04 24 80 2c 01 00 	movl   $0x12c80,(%esp)
   10825:	e8 a0 fb ff ff       	call   103ca <assertion_failure>
   1082a:	8b 45 f0             	mov    -0x10(%ebp),%eax
   1082d:	83 c0 04             	add    $0x4,%eax
   10830:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10833:	8b 45 f4             	mov    -0xc(%ebp),%eax
   10836:	8b 00                	mov    (%eax),%eax
   10838:	85 c0                	test   %eax,%eax
   1083a:	0f 95 c0             	setne  %al
   1083d:	83 45 f4 04          	addl   $0x4,-0xc(%ebp)
   10841:	84 c0                	test   %al,%al
   10843:	75 b4                	jne    107f9 <execv+0x18>
   10845:	8d 95 ec fb ff ff    	lea    -0x414(%ebp),%edx
   1084b:	8b 45 f0             	mov    -0x10(%ebp),%eax
   1084e:	8d 04 02             	lea    (%edx,%eax,1),%eax
   10851:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
   10857:	8b 45 f0             	mov    -0x10(%ebp),%eax
   1085a:	83 c0 04             	add    $0x4,%eax
   1085d:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10860:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
   10866:	89 45 ec             	mov    %eax,-0x14(%ebp)
   10869:	8b 45 0c             	mov    0xc(%ebp),%eax
   1086c:	89 45 f4             	mov    %eax,-0xc(%ebp)
   1086f:	e9 93 00 00 00       	jmp    10907 <execv+0x126>
   10874:	8b 45 f0             	mov    -0x10(%ebp),%eax
   10877:	8d 95 ec fb ff ff    	lea    -0x414(%ebp),%edx
   1087d:	01 c2                	add    %eax,%edx
   1087f:	8b 45 ec             	mov    -0x14(%ebp),%eax
   10882:	89 10                	mov    %edx,(%eax)
   10884:	83 45 ec 04          	addl   $0x4,-0x14(%ebp)
   10888:	8b 45 f4             	mov    -0xc(%ebp),%eax
   1088b:	8b 00                	mov    (%eax),%eax
   1088d:	89 04 24             	mov    %eax,(%esp)
   10890:	e8 c9 f8 ff ff       	call   1015e <strlen>
   10895:	03 45 f0             	add    -0x10(%ebp),%eax
   10898:	83 c0 01             	add    $0x1,%eax
   1089b:	3d ff 03 00 00       	cmp    $0x3ff,%eax
   108a0:	7e 24                	jle    108c6 <execv+0xe5>
   108a2:	c7 44 24 0c 55 00 00 	movl   $0x55,0xc(%esp)
   108a9:	00 
   108aa:	c7 44 24 08 60 2c 01 	movl   $0x12c60,0x8(%esp)
   108b1:	00 
   108b2:	c7 44 24 04 60 2c 01 	movl   $0x12c60,0x4(%esp)
   108b9:	00 
   108ba:	c7 04 24 b4 2c 01 00 	movl   $0x12cb4,(%esp)
   108c1:	e8 04 fb ff ff       	call   103ca <assertion_failure>
   108c6:	8b 45 f4             	mov    -0xc(%ebp),%eax
   108c9:	8b 00                	mov    (%eax),%eax
   108cb:	8b 55 f0             	mov    -0x10(%ebp),%edx
   108ce:	8d 8d ec fb ff ff    	lea    -0x414(%ebp),%ecx
   108d4:	8d 14 11             	lea    (%ecx,%edx,1),%edx
   108d7:	89 44 24 04          	mov    %eax,0x4(%esp)
   108db:	89 14 24             	mov    %edx,(%esp)
   108de:	e8 63 f8 ff ff       	call   10146 <strcpy>
   108e3:	8b 45 f4             	mov    -0xc(%ebp),%eax
   108e6:	8b 00                	mov    (%eax),%eax
   108e8:	89 04 24             	mov    %eax,(%esp)
   108eb:	e8 6e f8 ff ff       	call   1015e <strlen>
   108f0:	01 45 f0             	add    %eax,-0x10(%ebp)
   108f3:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
   108f9:	03 45 f0             	add    -0x10(%ebp),%eax
   108fc:	c6 00 00             	movb   $0x0,(%eax)
   108ff:	83 45 f0 01          	addl   $0x1,-0x10(%ebp)
   10903:	83 45 f4 04          	addl   $0x4,-0xc(%ebp)
   10907:	8b 45 f4             	mov    -0xc(%ebp),%eax
   1090a:	8b 00                	mov    (%eax),%eax
   1090c:	85 c0                	test   %eax,%eax
   1090e:	0f 85 60 ff ff ff    	jne    10874 <execv+0x93>
   10914:	c7 85 c0 fb ff ff 1d 	movl   $0x1d,-0x440(%ebp)
   1091b:	00 00 00 
   1091e:	8b 45 08             	mov    0x8(%ebp),%eax
   10921:	89 85 e4 fb ff ff    	mov    %eax,-0x41c(%ebp)
   10927:	8b 45 08             	mov    0x8(%ebp),%eax
   1092a:	89 04 24             	mov    %eax,(%esp)
   1092d:	e8 2c f8 ff ff       	call   1015e <strlen>
   10932:	89 85 c8 fb ff ff    	mov    %eax,-0x438(%ebp)
   10938:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
   1093e:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
   10944:	8b 45 f0             	mov    -0x10(%ebp),%eax
   10947:	89 85 cc fb ff ff    	mov    %eax,-0x434(%ebp)
   1094d:	8d 85 bc fb ff ff    	lea    -0x444(%ebp),%eax
   10953:	89 44 24 08          	mov    %eax,0x8(%esp)
   10957:	c7 44 24 04 04 00 00 	movl   $0x4,0x4(%esp)
   1095e:	00 
   1095f:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   10966:	e8 0d f8 ff ff       	call   10178 <send_recv>
   1096b:	8b 85 c0 fb ff ff    	mov    -0x440(%ebp),%eax
   10971:	83 f8 2d             	cmp    $0x2d,%eax
   10974:	74 24                	je     1099a <execv+0x1b9>
   10976:	c7 44 24 0c 64 00 00 	movl   $0x64,0xc(%esp)
   1097d:	00 
   1097e:	c7 44 24 08 60 2c 01 	movl   $0x12c60,0x8(%esp)
   10985:	00 
   10986:	c7 44 24 04 60 2c 01 	movl   $0x12c60,0x4(%esp)
   1098d:	00 
   1098e:	c7 04 24 67 2c 01 00 	movl   $0x12c67,(%esp)
   10995:	e8 30 fa ff ff       	call   103ca <assertion_failure>
   1099a:	8b 85 c4 fb ff ff    	mov    -0x43c(%ebp),%eax
   109a0:	c9                   	leave  
   109a1:	c3                   	ret    
   109a2:	90                   	nop
   109a3:	90                   	nop

000109a4 <uname>:
   109a4:	55                   	push   %ebp
   109a5:	89 e5                	mov    %esp,%ebp
   109a7:	83 ec 58             	sub    $0x58,%esp
   109aa:	c7 45 c4 0a 00 00 00 	movl   $0xa,-0x3c(%ebp)
   109b1:	8b 45 f4             	mov    -0xc(%ebp),%eax
   109b4:	89 45 ec             	mov    %eax,-0x14(%ebp)
   109b7:	8d 45 c0             	lea    -0x40(%ebp),%eax
   109ba:	89 44 24 08          	mov    %eax,0x8(%esp)
   109be:	c7 44 24 04 01 00 00 	movl   $0x1,0x4(%esp)
   109c5:	00 
   109c6:	c7 04 24 03 00 00 00 	movl   $0x3,(%esp)
   109cd:	e8 a6 f7 ff ff       	call   10178 <send_recv>
   109d2:	8b 45 c4             	mov    -0x3c(%ebp),%eax
   109d5:	83 f8 2d             	cmp    $0x2d,%eax
   109d8:	74 24                	je     109fe <uname+0x5a>
   109da:	c7 44 24 0c 2e 00 00 	movl   $0x2e,0xc(%esp)
   109e1:	00 
   109e2:	c7 44 24 08 e3 2c 01 	movl   $0x12ce3,0x8(%esp)
   109e9:	00 
   109ea:	c7 44 24 04 e3 2c 01 	movl   $0x12ce3,0x4(%esp)
   109f1:	00 
   109f2:	c7 04 24 eb 2c 01 00 	movl   $0x12ceb,(%esp)
   109f9:	e8 cc f9 ff ff       	call   103ca <assertion_failure>
   109fe:	8b 45 ec             	mov    -0x14(%ebp),%eax
   10a01:	89 45 f0             	mov    %eax,-0x10(%ebp)
   10a04:	8b 45 c8             	mov    -0x38(%ebp),%eax
   10a07:	c9                   	leave  
   10a08:	c3                   	ret    
   10a09:	90                   	nop
   10a0a:	90                   	nop
   10a0b:	90                   	nop
   10a0c:	90                   	nop
   10a0d:	90                   	nop
   10a0e:	90                   	nop
   10a0f:	90                   	nop

00010a10 <sendrec>:
   10a10:	53                   	push   %ebx
   10a11:	51                   	push   %ecx
   10a12:	52                   	push   %edx
   10a13:	b8 01 00 00 00       	mov    $0x1,%eax
   10a18:	8b 5c 24 10          	mov    0x10(%esp),%ebx
   10a1c:	8b 4c 24 14          	mov    0x14(%esp),%ecx
   10a20:	8b 54 24 18          	mov    0x18(%esp),%edx
   10a24:	cd 90                	int    $0x90
   10a26:	5a                   	pop    %edx
   10a27:	59                   	pop    %ecx
   10a28:	5b                   	pop    %ebx
   10a29:	c3                   	ret    

00010a2a <printx>:
   10a2a:	52                   	push   %edx
   10a2b:	b8 00 00 00 00       	mov    $0x0,%eax
   10a30:	8b 54 24 08          	mov    0x8(%esp),%edx
   10a34:	cd 90                	int    $0x90
   10a36:	5a                   	pop    %edx
   10a37:	c3                   	ret    

00010a38 <reboot>:
   10a38:	52                   	push   %edx
   10a39:	b8 02 00 00 00       	mov    $0x2,%eax
   10a3e:	8b 54 24 08          	mov    0x8(%esp),%edx
   10a42:	cd 90                	int    $0x90
   10a44:	5a                   	pop    %edx
   10a45:	c3                   	ret    

Disassembly of section .rodata:

00010a48 <FSBUF_SIZE-0x1ac>:
   10a48:	0a 0a                	or     (%edx),%cl
   10a4a:	0a 0a                	or     (%edx),%cl
   10a4c:	0a 0a                	or     (%edx),%cl
   10a4e:	0a 0a                	or     (%edx),%cl
   10a50:	0a 0a                	or     (%edx),%cl
   10a52:	0a 0a                	or     (%edx),%cl
   10a54:	0a 0a                	or     (%edx),%cl
   10a56:	0a 0a                	or     (%edx),%cl
   10a58:	00 49 4e             	add    %cl,0x4e(%ecx)
   10a5b:	49                   	dec    %ecx
   10a5c:	54                   	push   %esp
   10a5d:	00 6d 61             	add    %ch,0x61(%ebp)
   10a60:	69 6e 2e 63 00 72 65 	imul   $0x65720063,0x2e(%esi),%ebp
   10a67:	74 20                	je     10a89 <reboot+0x51>
   10a69:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   10a6e:	5b                   	pop    %ebx
   10a6f:	55                   	push   %ebp
   10a70:	6e                   	outsb  %ds:(%esi),(%dx)
   10a71:	63 6f 6d             	arpl   %bp,0x6d(%edi)
   10a74:	70 72                	jo     10ae8 <reboot+0xb0>
   10a76:	65                   	gs
   10a77:	73 73                	jae    10aec <reboot+0xb4>
   10a79:	69 6e 67 20 66 69 6c 	imul   $0x6c696620,0x67(%esi),%ebp
   10a80:	65                   	gs
   10a81:	73 2e                	jae    10ab1 <reboot+0x79>
   10a83:	2e 2e 0a 00          	cs or  %cs:(%eax),%al
   10a87:	66                   	data16
   10a88:	64 20 21             	and    %ah,%fs:(%ecx)
   10a8b:	3d 20 2d 31 00       	cmp    $0x312d20,%eax
   10a90:	62 79 74             	bound  %edi,0x74(%ecx)
   10a93:	65                   	gs
   10a94:	73 20                	jae    10ab6 <reboot+0x7e>
   10a96:	3d 3d 20 53 45       	cmp    $0x4553203d,%eax
   10a9b:	43                   	inc    %ebx
   10a9c:	54                   	push   %esp
   10a9d:	4f                   	dec    %edi
   10a9e:	52                   	push   %edx
   10a9f:	5f                   	pop    %edi
   10aa0:	53                   	push   %ebx
   10aa1:	49                   	dec    %ecx
   10aa2:	5a                   	pop    %edx
   10aa3:	45                   	inc    %ebp
   10aa4:	00 20                	add    %ah,(%eax)
   10aa6:	20 20                	and    %ah,(%eax)
   10aa8:	6e                   	outsb  %ds:(%esi),(%dx)
   10aa9:	65 65 64 20 6e 6f    	gs gs and %ch,%fs:%gs:0x6f(%esi)
   10aaf:	74 20                	je     10ad1 <reboot+0x99>
   10ab1:	75 6e                	jne    10b21 <reboot+0xe9>
   10ab3:	63 6f 6d             	arpl   %bp,0x6d(%edi)
   10ab6:	70 72                	jo     10b2a <reboot+0xf2>
   10ab8:	65                   	gs
   10ab9:	73 73                	jae    10b2e <reboot+0xf6>
   10abb:	2e 0a 00             	or     %cs:(%eax),%al
   10abe:	00 00                	add    %al,(%eax)
   10ac0:	66 61                	popaw  
   10ac2:	69 6c 65 64 20 74 6f 	imul   $0x206f7420,0x64(%ebp,%eiz,2),%ebp
   10ac9:	20 
   10aca:	75 6e                	jne    10b3a <reboot+0x102>
   10acc:	63 6f 6d             	arpl   %bp,0x6d(%edi)
   10acf:	70 72                	jo     10b43 <reboot+0x10b>
   10ad1:	65                   	gs
   10ad2:	73 73                	jae    10b47 <reboot+0x10f>
   10ad4:	20 66 69             	and    %ah,0x69(%esi)
   10ad7:	6c                   	insb   (%dx),%es:(%edi)
   10ad8:	65 3a 20             	cmp    %gs:(%eax),%ah
   10adb:	25 73 0a 00 61       	and    $0x61000a73,%eax
   10ae0:	62 6f 72             	bound  %ebp,0x72(%edi)
   10ae3:	74 65                	je     10b4a <reboot+0x112>
   10ae5:	64 0a 00             	or     %fs:(%eax),%al
   10ae8:	20 20                	and    %ah,(%eax)
   10aea:	20 20                	and    %ah,(%eax)
   10aec:	25 73 20 25 64       	and    $0x64252073,%eax
   10af1:	28 62 79             	sub    %ah,0x79(%edx)
   10af4:	74 65                	je     10b5b <reboot+0x123>
   10af6:	73 29                	jae    10b21 <reboot+0xe9>
   10af8:	0a 00                	or     (%eax),%al
   10afa:	62 79 74             	bound  %edi,0x74(%ecx)
   10afd:	65                   	gs
   10afe:	73 20                	jae    10b20 <reboot+0xe8>
   10b00:	3d 3d 20 69 6f       	cmp    $0x6f69203d,%eax
   10b05:	62 79 74             	bound  %edi,0x74(%ecx)
   10b08:	65                   	gs
   10b09:	73 00                	jae    10b0b <reboot+0xd3>
   10b0b:	62 79 74             	bound  %edi,0x74(%ecx)
   10b0e:	65                   	gs
   10b0f:	73 20                	jae    10b31 <reboot+0xf9>
   10b11:	3d 3d 20 31 00       	cmp    $0x31203d,%eax
   10b16:	64 6f                	outsl  %fs:(%esi),(%dx)
   10b18:	6e                   	outsb  %ds:(%esi),(%dx)
   10b19:	65                   	gs
   10b1a:	2e                   	cs
   10b1b:	5d                   	pop    %ebp
   10b1c:	0a 00                	or     (%eax),%al
   10b1e:	66                   	data16
   10b1f:	64                   	fs
   10b20:	5f                   	pop    %edi
   10b21:	73 74                	jae    10b97 <reboot+0x15f>
   10b23:	64 69 6e 20 3d 3d 20 	imul   $0x30203d3d,%fs:0x20(%esi),%ebp
   10b2a:	30 
   10b2b:	00 66 64             	add    %ah,0x64(%esi)
   10b2e:	5f                   	pop    %edi
   10b2f:	73 74                	jae    10ba5 <reboot+0x16d>
   10b31:	64 6f                	outsl  %fs:(%esi),(%dx)
   10b33:	75 74                	jne    10ba9 <reboot+0x171>
   10b35:	20 3d 3d 20 31 00    	and    %bh,0x31203d
   10b3b:	5b                   	pop    %ebx
   10b3c:	72 6f                	jb     10bad <reboot+0x175>
   10b3e:	6f                   	outsl  %ds:(%esi),(%dx)
   10b3f:	74 40                	je     10b81 <reboot+0x149>
   10b41:	25 73 5d 24 00       	and    $0x245d73,%eax
   10b46:	73 68                	jae    10bb0 <reboot+0x178>
   10b48:	65                   	gs
   10b49:	6c                   	insb   (%dx),%es:(%edi)
   10b4a:	6c                   	insb   (%dx),%es:(%edi)
   10b4b:	3a 43 6f             	cmp    0x6f(%ebx),%al
   10b4e:	6d                   	insl   (%dx),%es:(%edi)
   10b4f:	6d                   	insl   (%dx),%es:(%edi)
   10b50:	61                   	popa   
   10b51:	6e                   	outsb  %ds:(%esi),(%dx)
   10b52:	64 20 6e 6f          	and    %ch,%fs:0x6f(%esi)
   10b56:	74 20                	je     10b78 <reboot+0x140>
   10b58:	66 6f                	outsw  %ds:(%esi),(%dx)
   10b5a:	75 6e                	jne    10bca <reboot+0x192>
   10b5c:	64 2e 0a 00          	fs or  %cs:%fs:(%eax),%al
   10b60:	2f                   	das    
   10b61:	64                   	fs
   10b62:	65                   	gs
   10b63:	76 5f                	jbe    10bc4 <reboot+0x18c>
   10b65:	74 74                	je     10bdb <reboot+0x1a3>
   10b67:	79 30                	jns    10b99 <reboot+0x161>
   10b69:	00 2f                	add    %ch,(%edi)
   10b6b:	63 6d 64             	arpl   %bp,0x64(%ebp)
   10b6e:	2e 74 61             	je,pn  10bd2 <reboot+0x19a>
   10b71:	72 00                	jb     10b73 <reboot+0x13b>
   10b73:	0a 42 6f             	or     0x6f(%edx),%al
   10b76:	6f                   	outsl  %ds:(%esi),(%dx)
   10b77:	74 65                	je     10bde <reboot+0x1a6>
   10b79:	64 20 69 6e          	and    %ch,%fs:0x6e(%ecx)
   10b7d:	20 25 64 2e 25 64    	and    %ah,0x64252e64
   10b83:	20 73 0a             	and    %dh,0xa(%ebx)
   10b86:	00 30                	add    %dh,(%eax)
   10b88:	2e 32 2e             	xor    %cs:(%esi),%ch
   10b8b:	36 2e 33 00          	ss xor %cs:%ss:(%eax),%eax
   10b8f:	0a 57 65             	or     0x65(%edi),%dl
   10b92:	6c                   	insb   (%dx),%es:(%edi)
   10b93:	63 6f 6d             	arpl   %bp,0x6d(%edi)
   10b96:	65 20 74 6f 20       	and    %dh,%gs:0x20(%edi,%ebp,2)
   10b9b:	4c                   	dec    %esp
   10b9c:	79 6f                	jns    10c0d <LOGDISKBUF_SIZE+0xd>
   10b9e:	73 20                	jae    10bc0 <reboot+0x188>
   10ba0:	25 73 0a 00 28       	and    $0x28000a73,%eax
   10ba5:	63 29                	arpl   %bp,(%ecx)
   10ba7:	43                   	inc    %ebx
   10ba8:	6f                   	outsl  %ds:(%esi),(%dx)
   10ba9:	70 79                	jo     10c24 <LOGDISKBUF_SIZE+0x24>
   10bab:	72 69                	jb     10c16 <LOGDISKBUF_SIZE+0x16>
   10bad:	67 68 74 20 32 30    	addr16 push $0x30322074
   10bb3:	31 31                	xor    %esi,(%ecx)
   10bb5:	0a 0a                	or     (%edx),%cl
   10bb7:	00 2f                	add    %ch,(%edi)
   10bb9:	64                   	fs
   10bba:	65                   	gs
   10bbb:	76 5f                	jbe    10c1c <LOGDISKBUF_SIZE+0x1c>
   10bbd:	74 74                	je     10c33 <LOGDISKBUF_SIZE+0x33>
   10bbf:	79 31                	jns    10bf2 <reboot+0x1ba>
   10bc1:	00 2f                	add    %ch,(%edi)
   10bc3:	64                   	fs
   10bc4:	65                   	gs
   10bc5:	76 5f                	jbe    10c26 <LOGDISKBUF_SIZE+0x26>
   10bc7:	74 74                	je     10c3d <LOGDISKBUF_SIZE+0x3d>
   10bc9:	79 32                	jns    10bfd <LOGBUF_SIZE+0x1>
   10bcb:	00 0a                	add    %cl,(%edx)
   10bcd:	00 30                	add    %dh,(%eax)
   10bcf:	00 4b 65             	add    %cl,0x65(%ebx)
   10bd2:	72 6e                	jb     10c42 <LOGDISKBUF_SIZE+0x42>
   10bd4:	65                   	gs
   10bd5:	6c                   	insb   (%dx),%es:(%edi)
   10bd6:	20 70 61             	and    %dh,0x61(%eax)
   10bd9:	6e                   	outsb  %ds:(%esi),(%dx)
   10bda:	69 63 3a 20 25 73 00 	imul   $0x732520,0x3a(%ebx),%esp
   10be1:	73 70                	jae    10c53 <LOGDISKBUF_SIZE+0x53>
   10be3:	75 72                	jne    10c57 <LOGDISKBUF_SIZE+0x57>
   10be5:	69 6f 75 73 5f 69 72 	imul   $0x72695f73,0x75(%edi),%ebp
   10bec:	71 3a                	jno    10c28 <LOGDISKBUF_SIZE+0x28>
   10bee:	20 00                	and    %al,(%eax)
   10bf0:	0a 00                	or     (%eax),%al
	...

00010bf4 <FSBUF_SIZE>:
   10bf4:	00 00                	add    %al,(%eax)
   10bf6:	10 00                	adc    %al,(%eax)

00010bf8 <MMBUF_SIZE>:
   10bf8:	00 00                	add    %al,(%eax)
   10bfa:	10 00                	adc    %al,(%eax)

00010bfc <LOGBUF_SIZE>:
   10bfc:	00 00                	add    %al,(%eax)
   10bfe:	10 00                	adc    %al,(%eax)

00010c00 <LOGDISKBUF_SIZE>:
   10c00:	00 00                	add    %al,(%eax)
   10c02:	10 00                	adc    %al,(%eax)
   10c04:	70 72                	jo     10c78 <LOGDISKBUF_SIZE+0x78>
   10c06:	6f                   	outsl  %ds:(%esi),(%dx)
   10c07:	74 65                	je     10c6e <LOGDISKBUF_SIZE+0x6e>
   10c09:	63 74 2e 63          	arpl   %si,0x63(%esi,%ebp,1)
   10c0d:	00 00                	add    %al,(%eax)
   10c0f:	00 49 4e             	add    %cl,0x4e(%ecx)
   10c12:	44                   	inc    %esp
   10c13:	45                   	inc    %ebp
   10c14:	58                   	pop    %eax
   10c15:	5f                   	pop    %edi
   10c16:	4c                   	dec    %esp
   10c17:	44                   	inc    %esp
   10c18:	54                   	push   %esp
   10c19:	5f                   	pop    %edi
   10c1a:	46                   	inc    %esi
   10c1b:	49                   	dec    %ecx
   10c1c:	52                   	push   %edx
   10c1d:	53                   	push   %ebx
   10c1e:	54                   	push   %esp
   10c1f:	20 2b                	and    %ch,(%ebx)
   10c21:	20 69 20             	and    %ch,0x20(%ecx)
   10c24:	3c 20                	cmp    $0x20,%al
   10c26:	47                   	inc    %edi
   10c27:	44                   	inc    %esp
   10c28:	54                   	push   %esp
   10c29:	5f                   	pop    %edi
   10c2a:	53                   	push   %ebx
   10c2b:	49                   	dec    %ecx
   10c2c:	5a                   	pop    %edx
   10c2d:	45                   	inc    %ebp
   10c2e:	00 20                	add    %ah,(%eax)
   10c30:	00 45 78             	add    %al,0x78(%ebp)
   10c33:	63 65 70             	arpl   %sp,0x70(%ebp)
   10c36:	74 69                	je     10ca1 <LOGDISKBUF_SIZE+0xa1>
   10c38:	6f                   	outsl  %ds:(%esi),(%dx)
   10c39:	6e                   	outsb  %ds:(%esi),(%dx)
   10c3a:	21 20                	and    %esp,(%eax)
   10c3c:	2d 2d 3e 20 00       	sub    $0x203e2d,%eax
   10c41:	0a 0a                	or     (%edx),%cl
   10c43:	00 45 46             	add    %al,0x46(%ebp)
   10c46:	4c                   	dec    %esp
   10c47:	41                   	inc    %ecx
   10c48:	47                   	inc    %edi
   10c49:	53                   	push   %ebx
   10c4a:	3a 00                	cmp    (%eax),%al
   10c4c:	43                   	inc    %ebx
   10c4d:	53                   	push   %ebx
   10c4e:	3a 00                	cmp    (%eax),%al
   10c50:	45                   	inc    %ebp
   10c51:	49                   	dec    %ecx
   10c52:	50                   	push   %eax
   10c53:	3a 00                	cmp    (%eax),%al
   10c55:	50                   	push   %eax
   10c56:	49                   	dec    %ecx
   10c57:	44                   	inc    %esp
   10c58:	3a 00                	cmp    (%eax),%al
   10c5a:	45                   	inc    %ebp
   10c5b:	72 72                	jb     10ccf <LOGDISKBUF_SIZE+0xcf>
   10c5d:	6f                   	outsl  %ds:(%esi),(%dx)
   10c5e:	72 20                	jb     10c80 <LOGDISKBUF_SIZE+0x80>
   10c60:	63 6f 64             	arpl   %bp,0x64(%edi)
   10c63:	65 3a 00             	cmp    %gs:(%eax),%al
   10c66:	00 00                	add    %al,(%eax)
   10c68:	70 72                	jo     10cdc <LOGDISKBUF_SIZE+0xdc>
   10c6a:	6f                   	outsl  %ds:(%esi),(%dx)
   10c6b:	63 2e                	arpl   %bp,(%esi)
   10c6d:	63 00                	arpl   %ax,(%eax)
   10c6f:	6b 5f 72 65          	imul   $0x65,0x72(%edi),%ebx
   10c73:	65 6e                	outsb  %gs:(%esi),(%dx)
   10c75:	74 65                	je     10cdc <LOGDISKBUF_SIZE+0xdc>
   10c77:	72 20                	jb     10c99 <LOGDISKBUF_SIZE+0x99>
   10c79:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   10c7e:	00 00                	add    %al,(%eax)
   10c80:	28 73 72             	sub    %dh,0x72(%ebx)
   10c83:	63 5f 64             	arpl   %bx,0x64(%edi)
   10c86:	65                   	gs
   10c87:	73 74                	jae    10cfd <LOGDISKBUF_SIZE+0xfd>
   10c89:	20 3e                	and    %bh,(%esi)
   10c8b:	3d 20 30 20 26       	cmp    $0x26203020,%eax
   10c90:	26 20 73 72          	and    %dh,%es:0x72(%ebx)
   10c94:	63 5f 64             	arpl   %bx,0x64(%edi)
   10c97:	65                   	gs
   10c98:	73 74                	jae    10d0e <LOGDISKBUF_SIZE+0x10e>
   10c9a:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   10c9d:	4e                   	dec    %esi
   10c9e:	52                   	push   %edx
   10c9f:	5f                   	pop    %edi
   10ca0:	54                   	push   %esp
   10ca1:	41                   	inc    %ecx
   10ca2:	53                   	push   %ebx
   10ca3:	4b                   	dec    %ebx
   10ca4:	53                   	push   %ebx
   10ca5:	20 2b                	and    %ch,(%ebx)
   10ca7:	20 4e 52             	and    %cl,0x52(%esi)
   10caa:	5f                   	pop    %edi
   10cab:	50                   	push   %eax
   10cac:	52                   	push   %edx
   10cad:	4f                   	dec    %edi
   10cae:	43                   	inc    %ebx
   10caf:	53                   	push   %ebx
   10cb0:	29 20                	sub    %esp,(%eax)
   10cb2:	7c 7c                	jl     10d30 <LOGDISKBUF_SIZE+0x130>
   10cb4:	20 73 72             	and    %dh,0x72(%ebx)
   10cb7:	63 5f 64             	arpl   %bx,0x64(%edi)
   10cba:	65                   	gs
   10cbb:	73 74                	jae    10d31 <LOGDISKBUF_SIZE+0x131>
   10cbd:	20 3d 3d 20 41 4e    	and    %bh,0x4e41203d
   10cc3:	59                   	pop    %ecx
   10cc4:	20 7c 7c 20          	and    %bh,0x20(%esp,%edi,2)
   10cc8:	73 72                	jae    10d3c <LOGDISKBUF_SIZE+0x13c>
   10cca:	63 5f 64             	arpl   %bx,0x64(%edi)
   10ccd:	65                   	gs
   10cce:	73 74                	jae    10d44 <LOGDISKBUF_SIZE+0x144>
   10cd0:	20 3d 3d 20 49 4e    	and    %bh,0x4e49203d
   10cd6:	54                   	push   %esp
   10cd7:	45                   	inc    %ebp
   10cd8:	52                   	push   %edx
   10cd9:	52                   	push   %edx
   10cda:	55                   	push   %ebp
   10cdb:	50                   	push   %eax
   10cdc:	54                   	push   %esp
   10cdd:	00 6d 6c             	add    %ch,0x6c(%ebp)
   10ce0:	61                   	popa   
   10ce1:	2d 3e 73 6f 75       	sub    $0x756f733e,%eax
   10ce6:	72 63                	jb     10d4b <LOGDISKBUF_SIZE+0x14b>
   10ce8:	65 20 21             	and    %ah,%gs:(%ecx)
   10ceb:	3d 20 73 72 63       	cmp    $0x63727320,%eax
   10cf0:	5f                   	pop    %edi
   10cf1:	64                   	fs
   10cf2:	65                   	gs
   10cf3:	73 74                	jae    10d69 <LOGDISKBUF_SIZE+0x169>
   10cf5:	00 00                	add    %al,(%eax)
   10cf7:	00 7b 73             	add    %bh,0x73(%ebx)
   10cfa:	79 73                	jns    10d6f <LOGDISKBUF_SIZE+0x16f>
   10cfc:	5f                   	pop    %edi
   10cfd:	73 65                	jae    10d64 <LOGDISKBUF_SIZE+0x164>
   10cff:	6e                   	outsb  %ds:(%esi),(%dx)
   10d00:	64                   	fs
   10d01:	72 65                	jb     10d68 <LOGDISKBUF_SIZE+0x168>
   10d03:	63 7d 20             	arpl   %di,0x20(%ebp)
   10d06:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   10d0d:	20 66 75             	and    %ah,0x75(%esi)
   10d10:	6e                   	outsb  %ds:(%esi),(%dx)
   10d11:	63 74 69 6f          	arpl   %si,0x6f(%ecx,%ebp,2)
   10d15:	6e                   	outsb  %ds:(%esi),(%dx)
   10d16:	3a 20                	cmp    (%eax),%ah
   10d18:	25 64 20 28 53       	and    $0x53282064,%eax
   10d1d:	45                   	inc    %ebp
   10d1e:	4e                   	dec    %esi
   10d1f:	44                   	inc    %esp
   10d20:	3a 25 64 2c 20 52    	cmp    0x52202c64,%ah
   10d26:	45                   	inc    %ebp
   10d27:	43                   	inc    %ebx
   10d28:	45                   	inc    %ebp
   10d29:	49                   	dec    %ecx
   10d2a:	56                   	push   %esi
   10d2b:	45                   	inc    %ebp
   10d2c:	3a 25 64 29 2e 00    	cmp    0x2e2964,%ah
   10d32:	6c                   	insb   (%dx),%es:(%edi)
   10d33:	61                   	popa   
   10d34:	20 3d 3d 20 28 75    	and    %bh,0x7528203d
   10d3a:	33 32                	xor    (%edx),%esi
   10d3c:	29 76 61             	sub    %esi,0x61(%esi)
   10d3f:	00 70 2d             	add    %dh,0x2d(%eax)
   10d42:	3e 73 74             	jae,pt 10db9 <LOGDISKBUF_SIZE+0x1b9>
   10d45:	61                   	popa   
   10d46:	74 65                	je     10dad <LOGDISKBUF_SIZE+0x1ad>
   10d48:	00 70 2d             	add    %dh,0x2d(%eax)
   10d4b:	3e 73 74             	jae,pt 10dc2 <LOGDISKBUF_SIZE+0x1c2>
   10d4e:	61                   	popa   
   10d4f:	74 65                	je     10db6 <LOGDISKBUF_SIZE+0x1b6>
   10d51:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10d57:	3d 5f 3d 25 73       	cmp    $0x73253d5f,%eax
   10d5c:	00 70 2d             	add    %dh,0x2d(%eax)
   10d5f:	3e                   	ds
   10d60:	6d                   	insl   (%dx),%es:(%edi)
   10d61:	73 67                	jae    10dca <LOGDISKBUF_SIZE+0x1ca>
   10d63:	00 2d 3e 25 73 00    	add    %ch,0x73253e
   10d69:	3d 5f 3d 00 70       	cmp    $0x70003d5f,%eax
   10d6e:	72 6f                	jb     10ddf <LOGDISKBUF_SIZE+0x1df>
   10d70:	63 32                	arpl   %si,(%edx)
   10d72:	70 69                	jo     10ddd <LOGDISKBUF_SIZE+0x1dd>
   10d74:	64 28 73 65          	sub    %dh,%fs:0x65(%ebx)
   10d78:	6e                   	outsb  %ds:(%esi),(%dx)
   10d79:	64                   	fs
   10d7a:	65                   	gs
   10d7b:	72 29                	jb     10da6 <LOGDISKBUF_SIZE+0x1a6>
   10d7d:	20 21                	and    %ah,(%ecx)
   10d7f:	3d 20 64 65 73       	cmp    $0x73656420,%eax
   10d84:	74 00                	je     10d86 <LOGDISKBUF_SIZE+0x186>
   10d86:	3e                   	ds
   10d87:	3e                   	ds
   10d88:	44                   	inc    %esp
   10d89:	45                   	inc    %ebp
   10d8a:	41                   	inc    %ecx
   10d8b:	44                   	inc    %esp
   10d8c:	4c                   	dec    %esp
   10d8d:	4f                   	dec    %edi
   10d8e:	43                   	inc    %ebx
   10d8f:	4b                   	dec    %ebx
   10d90:	3c 3c                	cmp    $0x3c,%al
   10d92:	20 25 73 2d 3e 25    	and    %ah,0x253e2d73
   10d98:	73 00                	jae    10d9a <LOGDISKBUF_SIZE+0x19a>
   10d9a:	70 5f                	jo     10dfb <LOGDISKBUF_SIZE+0x1fb>
   10d9c:	64                   	fs
   10d9d:	65                   	gs
   10d9e:	73 74                	jae    10e14 <LOGDISKBUF_SIZE+0x214>
   10da0:	2d 3e 6d 73 67       	sub    $0x67736d3e,%eax
   10da5:	00 6d 00             	add    %ch,0x0(%ebp)
   10da8:	70 5f                	jo     10e09 <LOGDISKBUF_SIZE+0x209>
   10daa:	64                   	fs
   10dab:	65                   	gs
   10dac:	73 74                	jae    10e22 <LOGDISKBUF_SIZE+0x222>
   10dae:	2d 3e 73 74 61       	sub    $0x6174733e,%eax
   10db3:	74 65                	je     10e1a <LOGDISKBUF_SIZE+0x21a>
   10db5:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10dbb:	70 5f                	jo     10e1c <LOGDISKBUF_SIZE+0x21c>
   10dbd:	64                   	fs
   10dbe:	65                   	gs
   10dbf:	73 74                	jae    10e35 <LOGDISKBUF_SIZE+0x235>
   10dc1:	2d 3e 6d 73 67       	sub    $0x67736d3e,%eax
   10dc6:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10dcc:	70 5f                	jo     10e2d <LOGDISKBUF_SIZE+0x22d>
   10dce:	64                   	fs
   10dcf:	65                   	gs
   10dd0:	73 74                	jae    10e46 <LOGDISKBUF_SIZE+0x246>
   10dd2:	2d 3e 72 65 63       	sub    $0x6365723e,%eax
   10dd7:	76 66                	jbe    10e3f <LOGDISKBUF_SIZE+0x23f>
   10dd9:	72 6f                	jb     10e4a <LOGDISKBUF_SIZE+0x24a>
   10ddb:	6d                   	insl   (%dx),%es:(%edi)
   10ddc:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10de2:	5f                   	pop    %edi
   10de3:	54                   	push   %esp
   10de4:	41                   	inc    %ecx
   10de5:	53                   	push   %ebx
   10de6:	4b                   	dec    %ebx
   10de7:	00 70 5f             	add    %dh,0x5f(%eax)
   10dea:	64                   	fs
   10deb:	65                   	gs
   10dec:	73 74                	jae    10e62 <LOGDISKBUF_SIZE+0x262>
   10dee:	2d 3e 73 65 6e       	sub    $0x6e65733e,%eax
   10df3:	64                   	fs
   10df4:	74 6f                	je     10e65 <LOGDISKBUF_SIZE+0x265>
   10df6:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10dfc:	5f                   	pop    %edi
   10dfd:	54                   	push   %esp
   10dfe:	41                   	inc    %ecx
   10dff:	53                   	push   %ebx
   10e00:	4b                   	dec    %ebx
   10e01:	00 73 65             	add    %dh,0x65(%ebx)
   10e04:	6e                   	outsb  %ds:(%esi),(%dx)
   10e05:	64                   	fs
   10e06:	65                   	gs
   10e07:	72 2d                	jb     10e36 <LOGDISKBUF_SIZE+0x236>
   10e09:	3e 73 74             	jae,pt 10e80 <LOGDISKBUF_SIZE+0x280>
   10e0c:	61                   	popa   
   10e0d:	74 65                	je     10e74 <LOGDISKBUF_SIZE+0x274>
   10e0f:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10e15:	73 65                	jae    10e7c <LOGDISKBUF_SIZE+0x27c>
   10e17:	6e                   	outsb  %ds:(%esi),(%dx)
   10e18:	64                   	fs
   10e19:	65                   	gs
   10e1a:	72 2d                	jb     10e49 <LOGDISKBUF_SIZE+0x249>
   10e1c:	3e                   	ds
   10e1d:	6d                   	insl   (%dx),%es:(%edi)
   10e1e:	73 67                	jae    10e87 <LOGDISKBUF_SIZE+0x287>
   10e20:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10e26:	73 65                	jae    10e8d <LOGDISKBUF_SIZE+0x28d>
   10e28:	6e                   	outsb  %ds:(%esi),(%dx)
   10e29:	64                   	fs
   10e2a:	65                   	gs
   10e2b:	72 2d                	jb     10e5a <LOGDISKBUF_SIZE+0x25a>
   10e2d:	3e 72 65             	jb,pt  10e95 <LOGDISKBUF_SIZE+0x295>
   10e30:	63 76 66             	arpl   %si,0x66(%esi)
   10e33:	72 6f                	jb     10ea4 <LOGDISKBUF_SIZE+0x2a4>
   10e35:	6d                   	insl   (%dx),%es:(%edi)
   10e36:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10e3c:	5f                   	pop    %edi
   10e3d:	54                   	push   %esp
   10e3e:	41                   	inc    %ecx
   10e3f:	53                   	push   %ebx
   10e40:	4b                   	dec    %ebx
   10e41:	00 73 65             	add    %dh,0x65(%ebx)
   10e44:	6e                   	outsb  %ds:(%esi),(%dx)
   10e45:	64                   	fs
   10e46:	65                   	gs
   10e47:	72 2d                	jb     10e76 <LOGDISKBUF_SIZE+0x276>
   10e49:	3e 73 65             	jae,pt 10eb1 <LOGDISKBUF_SIZE+0x2b1>
   10e4c:	6e                   	outsb  %ds:(%esi),(%dx)
   10e4d:	64                   	fs
   10e4e:	74 6f                	je     10ebf <LOGDISKBUF_SIZE+0x2bf>
   10e50:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10e56:	5f                   	pop    %edi
   10e57:	54                   	push   %esp
   10e58:	41                   	inc    %ecx
   10e59:	53                   	push   %ebx
   10e5a:	4b                   	dec    %ebx
   10e5b:	00 73 65             	add    %dh,0x65(%ebx)
   10e5e:	6e                   	outsb  %ds:(%esi),(%dx)
   10e5f:	64                   	fs
   10e60:	65                   	gs
   10e61:	72 2d                	jb     10e90 <LOGDISKBUF_SIZE+0x290>
   10e63:	3e 73 74             	jae,pt 10eda <LOGDISKBUF_SIZE+0x2da>
   10e66:	61                   	popa   
   10e67:	74 65                	je     10ece <LOGDISKBUF_SIZE+0x2ce>
   10e69:	20 3d 3d 20 53 45    	and    %bh,0x4553203d
   10e6f:	4e                   	dec    %esi
   10e70:	44                   	inc    %esp
   10e71:	49                   	dec    %ecx
   10e72:	4e                   	dec    %esi
   10e73:	47                   	inc    %edi
   10e74:	00 73 65             	add    %dh,0x65(%ebx)
   10e77:	6e                   	outsb  %ds:(%esi),(%dx)
   10e78:	64                   	fs
   10e79:	65                   	gs
   10e7a:	72 2d                	jb     10ea9 <LOGDISKBUF_SIZE+0x2a9>
   10e7c:	3e                   	ds
   10e7d:	6d                   	insl   (%dx),%es:(%edi)
   10e7e:	73 67                	jae    10ee7 <LOGDISKBUF_SIZE+0x2e7>
   10e80:	20 21                	and    %ah,(%ecx)
   10e82:	3d 20 30 00 73       	cmp    $0x73003020,%eax
   10e87:	65 6e                	outsb  %gs:(%esi),(%dx)
   10e89:	64                   	fs
   10e8a:	65                   	gs
   10e8b:	72 2d                	jb     10eba <LOGDISKBUF_SIZE+0x2ba>
   10e8d:	3e 73 65             	jae,pt 10ef5 <LOGDISKBUF_SIZE+0x2f5>
   10e90:	6e                   	outsb  %ds:(%esi),(%dx)
   10e91:	64                   	fs
   10e92:	74 6f                	je     10f03 <LOGDISKBUF_SIZE+0x303>
   10e94:	20 3d 3d 20 64 65    	and    %bh,0x6564203d
   10e9a:	73 74                	jae    10f10 <LOGDISKBUF_SIZE+0x310>
   10e9c:	00 00                	add    %al,(%eax)
   10e9e:	00 00                	add    %al,(%eax)
   10ea0:	70 72                	jo     10f14 <LOGDISKBUF_SIZE+0x314>
   10ea2:	6f                   	outsl  %ds:(%esi),(%dx)
   10ea3:	63 32                	arpl   %si,(%edx)
   10ea5:	70 69                	jo     10f10 <LOGDISKBUF_SIZE+0x310>
   10ea7:	64 28 77 68          	sub    %dh,%fs:0x68(%edi)
   10eab:	6f                   	outsl  %ds:(%esi),(%dx)
   10eac:	5f                   	pop    %edi
   10ead:	77 61                	ja     10f10 <LOGDISKBUF_SIZE+0x310>
   10eaf:	6e                   	outsb  %ds:(%esi),(%dx)
   10eb0:	6e                   	outsb  %ds:(%esi),(%dx)
   10eb1:	61                   	popa   
   10eb2:	5f                   	pop    %edi
   10eb3:	72 65                	jb     10f1a <LOGDISKBUF_SIZE+0x31a>
   10eb5:	63 76 29             	arpl   %si,0x29(%esi)
   10eb8:	20 21                	and    %ah,(%ecx)
   10eba:	3d 20 73 72 63       	cmp    $0x63727320,%eax
   10ebf:	00 77 68             	add    %dh,0x68(%edi)
   10ec2:	6f                   	outsl  %ds:(%esi),(%dx)
   10ec3:	5f                   	pop    %edi
   10ec4:	77 61                	ja     10f27 <LOGDISKBUF_SIZE+0x327>
   10ec6:	6e                   	outsb  %ds:(%esi),(%dx)
   10ec7:	6e                   	outsb  %ds:(%esi),(%dx)
   10ec8:	61                   	popa   
   10ec9:	5f                   	pop    %edi
   10eca:	72 65                	jb     10f31 <LOGDISKBUF_SIZE+0x331>
   10ecc:	63 76 2d             	arpl   %si,0x2d(%esi)
   10ecf:	3e 73 74             	jae,pt 10f46 <LOGDISKBUF_SIZE+0x346>
   10ed2:	61                   	popa   
   10ed3:	74 65                	je     10f3a <LOGDISKBUF_SIZE+0x33a>
   10ed5:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10edb:	77 68                	ja     10f45 <LOGDISKBUF_SIZE+0x345>
   10edd:	6f                   	outsl  %ds:(%esi),(%dx)
   10ede:	5f                   	pop    %edi
   10edf:	77 61                	ja     10f42 <LOGDISKBUF_SIZE+0x342>
   10ee1:	6e                   	outsb  %ds:(%esi),(%dx)
   10ee2:	6e                   	outsb  %ds:(%esi),(%dx)
   10ee3:	61                   	popa   
   10ee4:	5f                   	pop    %edi
   10ee5:	72 65                	jb     10f4c <LOGDISKBUF_SIZE+0x34c>
   10ee7:	63 76 2d             	arpl   %si,0x2d(%esi)
   10eea:	3e                   	ds
   10eeb:	6d                   	insl   (%dx),%es:(%edi)
   10eec:	73 67                	jae    10f55 <LOGDISKBUF_SIZE+0x355>
   10eee:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10ef4:	77 68                	ja     10f5e <LOGDISKBUF_SIZE+0x35e>
   10ef6:	6f                   	outsl  %ds:(%esi),(%dx)
   10ef7:	5f                   	pop    %edi
   10ef8:	77 61                	ja     10f5b <LOGDISKBUF_SIZE+0x35b>
   10efa:	6e                   	outsb  %ds:(%esi),(%dx)
   10efb:	6e                   	outsb  %ds:(%esi),(%dx)
   10efc:	61                   	popa   
   10efd:	5f                   	pop    %edi
   10efe:	72 65                	jb     10f65 <LOGDISKBUF_SIZE+0x365>
   10f00:	63 76 2d             	arpl   %si,0x2d(%esi)
   10f03:	3e 73 65             	jae,pt 10f6b <LOGDISKBUF_SIZE+0x36b>
   10f06:	6e                   	outsb  %ds:(%esi),(%dx)
   10f07:	64                   	fs
   10f08:	74 6f                	je     10f79 <LOGDISKBUF_SIZE+0x379>
   10f0a:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10f10:	5f                   	pop    %edi
   10f11:	54                   	push   %esp
   10f12:	41                   	inc    %ecx
   10f13:	53                   	push   %ebx
   10f14:	4b                   	dec    %ebx
   10f15:	00 00                	add    %al,(%eax)
   10f17:	00 77 68             	add    %dh,0x68(%edi)
   10f1a:	6f                   	outsl  %ds:(%esi),(%dx)
   10f1b:	5f                   	pop    %edi
   10f1c:	77 61                	ja     10f7f <LOGDISKBUF_SIZE+0x37f>
   10f1e:	6e                   	outsb  %ds:(%esi),(%dx)
   10f1f:	6e                   	outsb  %ds:(%esi),(%dx)
   10f20:	61                   	popa   
   10f21:	5f                   	pop    %edi
   10f22:	72 65                	jb     10f89 <LOGDISKBUF_SIZE+0x389>
   10f24:	63 76 2d             	arpl   %si,0x2d(%esi)
   10f27:	3e                   	ds
   10f28:	68 61 73 5f 69       	push   $0x695f7361
   10f2d:	6e                   	outsb  %ds:(%esi),(%dx)
   10f2e:	74 5f                	je     10f8f <LOGDISKBUF_SIZE+0x38f>
   10f30:	6d                   	insl   (%dx),%es:(%edi)
   10f31:	73 67                	jae    10f9a <LOGDISKBUF_SIZE+0x39a>
   10f33:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   10f39:	00 00                	add    %al,(%eax)
   10f3b:	00 77 68             	add    %dh,0x68(%edi)
   10f3e:	6f                   	outsl  %ds:(%esi),(%dx)
   10f3f:	5f                   	pop    %edi
   10f40:	77 61                	ja     10fa3 <LOGDISKBUF_SIZE+0x3a3>
   10f42:	6e                   	outsb  %ds:(%esi),(%dx)
   10f43:	6e                   	outsb  %ds:(%esi),(%dx)
   10f44:	61                   	popa   
   10f45:	5f                   	pop    %edi
   10f46:	72 65                	jb     10fad <LOGDISKBUF_SIZE+0x3ad>
   10f48:	63 76 2d             	arpl   %si,0x2d(%esi)
   10f4b:	3e 72 65             	jb,pt  10fb3 <LOGDISKBUF_SIZE+0x3b3>
   10f4e:	63 76 66             	arpl   %si,0x66(%esi)
   10f51:	72 6f                	jb     10fc2 <LOGDISKBUF_SIZE+0x3c2>
   10f53:	6d                   	insl   (%dx),%es:(%edi)
   10f54:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10f5a:	5f                   	pop    %edi
   10f5b:	54                   	push   %esp
   10f5c:	41                   	inc    %ecx
   10f5d:	53                   	push   %ebx
   10f5e:	4b                   	dec    %ebx
   10f5f:	00 77 68             	add    %dh,0x68(%edi)
   10f62:	6f                   	outsl  %ds:(%esi),(%dx)
   10f63:	5f                   	pop    %edi
   10f64:	77 61                	ja     10fc7 <LOGDISKBUF_SIZE+0x3c7>
   10f66:	6e                   	outsb  %ds:(%esi),(%dx)
   10f67:	6e                   	outsb  %ds:(%esi),(%dx)
   10f68:	61                   	popa   
   10f69:	5f                   	pop    %edi
   10f6a:	72 65                	jb     10fd1 <LOGDISKBUF_SIZE+0x3d1>
   10f6c:	63 76 2d             	arpl   %si,0x2d(%esi)
   10f6f:	3e 71 5f             	jno,pt 10fd1 <LOGDISKBUF_SIZE+0x3d1>
   10f72:	73 65                	jae    10fd9 <LOGDISKBUF_SIZE+0x3d9>
   10f74:	6e                   	outsb  %ds:(%esi),(%dx)
   10f75:	64 69 6e 67 20 21 3d 	imul   $0x203d2120,%fs:0x67(%esi),%ebp
   10f7c:	20 
   10f7d:	30 00                	xor    %al,(%eax)
   10f7f:	66                   	data16
   10f80:	72 6f                	jb     10ff1 <LOGDISKBUF_SIZE+0x3f1>
   10f82:	6d                   	insl   (%dx),%es:(%edi)
   10f83:	2d 3e 73 74 61       	sub    $0x6174733e,%eax
   10f88:	74 65                	je     10fef <LOGDISKBUF_SIZE+0x3ef>
   10f8a:	20 3d 3d 20 53 45    	and    %bh,0x4553203d
   10f90:	4e                   	dec    %esi
   10f91:	44                   	inc    %esp
   10f92:	49                   	dec    %ecx
   10f93:	4e                   	dec    %esi
   10f94:	47                   	inc    %edi
   10f95:	00 66 72             	add    %ah,0x72(%esi)
   10f98:	6f                   	outsl  %ds:(%esi),(%dx)
   10f99:	6d                   	insl   (%dx),%es:(%edi)
   10f9a:	2d 3e 6d 73 67       	sub    $0x67736d3e,%eax
   10f9f:	20 21                	and    %ah,(%ecx)
   10fa1:	3d 20 30 00 66       	cmp    $0x66003020,%eax
   10fa6:	72 6f                	jb     11017 <LOGDISKBUF_SIZE+0x417>
   10fa8:	6d                   	insl   (%dx),%es:(%edi)
   10fa9:	2d 3e 72 65 63       	sub    $0x6365723e,%eax
   10fae:	76 66                	jbe    11016 <LOGDISKBUF_SIZE+0x416>
   10fb0:	72 6f                	jb     11021 <LOGDISKBUF_SIZE+0x421>
   10fb2:	6d                   	insl   (%dx),%es:(%edi)
   10fb3:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   10fb9:	5f                   	pop    %edi
   10fba:	54                   	push   %esp
   10fbb:	41                   	inc    %ecx
   10fbc:	53                   	push   %ebx
   10fbd:	4b                   	dec    %ebx
   10fbe:	00 00                	add    %al,(%eax)
   10fc0:	66                   	data16
   10fc1:	72 6f                	jb     11032 <LOGDISKBUF_SIZE+0x432>
   10fc3:	6d                   	insl   (%dx),%es:(%edi)
   10fc4:	2d 3e 73 65 6e       	sub    $0x6e65733e,%eax
   10fc9:	64                   	fs
   10fca:	74 6f                	je     1103b <LOGDISKBUF_SIZE+0x43b>
   10fcc:	20 3d 3d 20 70 72    	and    %bh,0x7270203d
   10fd2:	6f                   	outsl  %ds:(%esi),(%dx)
   10fd3:	63 32                	arpl   %si,(%edx)
   10fd5:	70 69                	jo     11040 <LOGDISKBUF_SIZE+0x440>
   10fd7:	64 28 77 68          	sub    %dh,%fs:0x68(%edi)
   10fdb:	6f                   	outsl  %ds:(%esi),(%dx)
   10fdc:	5f                   	pop    %edi
   10fdd:	77 61                	ja     11040 <LOGDISKBUF_SIZE+0x440>
   10fdf:	6e                   	outsb  %ds:(%esi),(%dx)
   10fe0:	6e                   	outsb  %ds:(%esi),(%dx)
   10fe1:	61                   	popa   
   10fe2:	5f                   	pop    %edi
   10fe3:	72 65                	jb     1104a <LOGDISKBUF_SIZE+0x44a>
   10fe5:	63 76 29             	arpl   %si,0x29(%esi)
   10fe8:	00 70 00             	add    %dh,0x0(%eax)
   10feb:	66                   	data16
   10fec:	72 6f                	jb     1105d <LOGDISKBUF_SIZE+0x45d>
   10fee:	6d                   	insl   (%dx),%es:(%edi)
   10fef:	2d 3e 73 74 61       	sub    $0x6174733e,%eax
   10ff4:	74 65                	je     1105b <LOGDISKBUF_SIZE+0x45b>
   10ff6:	20 26                	and    %ah,(%esi)
   10ff8:	20 53 45             	and    %dl,0x45(%ebx)
   10ffb:	4e                   	dec    %esi
   10ffc:	44                   	inc    %esp
   10ffd:	49                   	dec    %ecx
   10ffe:	4e                   	dec    %esi
   10fff:	47                   	inc    %edi
   11000:	00 70 72             	add    %dh,0x72(%eax)
   11003:	65                   	gs
   11004:	76 20                	jbe    11026 <LOGDISKBUF_SIZE+0x426>
   11006:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   1100b:	70 72                	jo     1107f <LOGDISKBUF_SIZE+0x47f>
   1100d:	65                   	gs
   1100e:	76 00                	jbe    11010 <LOGDISKBUF_SIZE+0x410>
   11010:	66                   	data16
   11011:	72 6f                	jb     11082 <LOGDISKBUF_SIZE+0x482>
   11013:	6d                   	insl   (%dx),%es:(%edi)
   11014:	2d 3e 6d 73 67       	sub    $0x67736d3e,%eax
   11019:	00 00                	add    %al,(%eax)
   1101b:	00 77 68             	add    %dh,0x68(%edi)
   1101e:	6f                   	outsl  %ds:(%esi),(%dx)
   1101f:	5f                   	pop    %edi
   11020:	77 61                	ja     11083 <LOGDISKBUF_SIZE+0x483>
   11022:	6e                   	outsb  %ds:(%esi),(%dx)
   11023:	6e                   	outsb  %ds:(%esi),(%dx)
   11024:	61                   	popa   
   11025:	5f                   	pop    %edi
   11026:	72 65                	jb     1108d <LOGDISKBUF_SIZE+0x48d>
   11028:	63 76 2d             	arpl   %si,0x2d(%esi)
   1102b:	3e 73 74             	jae,pt 110a2 <LOGDISKBUF_SIZE+0x4a2>
   1102e:	61                   	popa   
   1102f:	74 65                	je     11096 <LOGDISKBUF_SIZE+0x496>
   11031:	20 3d 3d 20 52 45    	and    %bh,0x4552203d
   11037:	43                   	inc    %ebx
   11038:	45                   	inc    %ebp
   11039:	49                   	dec    %ecx
   1103a:	56                   	push   %esi
   1103b:	49                   	dec    %ecx
   1103c:	4e                   	dec    %esi
   1103d:	47                   	inc    %edi
   1103e:	00 77 68             	add    %dh,0x68(%edi)
   11041:	6f                   	outsl  %ds:(%esi),(%dx)
   11042:	5f                   	pop    %edi
   11043:	77 61                	ja     110a6 <LOGDISKBUF_SIZE+0x4a6>
   11045:	6e                   	outsb  %ds:(%esi),(%dx)
   11046:	6e                   	outsb  %ds:(%esi),(%dx)
   11047:	61                   	popa   
   11048:	5f                   	pop    %edi
   11049:	72 65                	jb     110b0 <LOGDISKBUF_SIZE+0x4b0>
   1104b:	63 76 2d             	arpl   %si,0x2d(%esi)
   1104e:	3e                   	ds
   1104f:	6d                   	insl   (%dx),%es:(%edi)
   11050:	73 67                	jae    110b9 <LOGDISKBUF_SIZE+0x4b9>
   11052:	20 21                	and    %ah,(%ecx)
   11054:	3d 20 30 00 77       	cmp    $0x77003020,%eax
   11059:	68 6f 5f 77 61       	push   $0x61775f6f
   1105e:	6e                   	outsb  %ds:(%esi),(%dx)
   1105f:	6e                   	outsb  %ds:(%esi),(%dx)
   11060:	61                   	popa   
   11061:	5f                   	pop    %edi
   11062:	72 65                	jb     110c9 <LOGDISKBUF_SIZE+0x4c9>
   11064:	63 76 2d             	arpl   %si,0x2d(%esi)
   11067:	3e 72 65             	jb,pt  110cf <LOGDISKBUF_SIZE+0x4cf>
   1106a:	63 76 66             	arpl   %si,0x66(%esi)
   1106d:	72 6f                	jb     110de <LOGDISKBUF_SIZE+0x4de>
   1106f:	6d                   	insl   (%dx),%es:(%edi)
   11070:	20 21                	and    %ah,(%ecx)
   11072:	3d 20 4e 4f 5f       	cmp    $0x5f4f4e20,%eax
   11077:	54                   	push   %esp
   11078:	41                   	inc    %ecx
   11079:	53                   	push   %ebx
   1107a:	4b                   	dec    %ebx
   1107b:	00 70 2d             	add    %dh,0x2d(%eax)
   1107e:	3e                   	ds
   1107f:	6d                   	insl   (%dx),%es:(%edi)
   11080:	73 67                	jae    110e9 <LOGDISKBUF_SIZE+0x4e9>
   11082:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   11088:	70 2d                	jo     110b7 <LOGDISKBUF_SIZE+0x4b7>
   1108a:	3e 72 65             	jb,pt  110f2 <LOGDISKBUF_SIZE+0x4f2>
   1108d:	63 76 66             	arpl   %si,0x66(%esi)
   11090:	72 6f                	jb     11101 <LOGDISKBUF_SIZE+0x501>
   11092:	6d                   	insl   (%dx),%es:(%edi)
   11093:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   11099:	5f                   	pop    %edi
   1109a:	54                   	push   %esp
   1109b:	41                   	inc    %ecx
   1109c:	53                   	push   %ebx
   1109d:	4b                   	dec    %ebx
   1109e:	00 70 2d             	add    %dh,0x2d(%eax)
   110a1:	3e 73 65             	jae,pt 11109 <LOGDISKBUF_SIZE+0x509>
   110a4:	6e                   	outsb  %ds:(%esi),(%dx)
   110a5:	64                   	fs
   110a6:	74 6f                	je     11117 <LOGDISKBUF_SIZE+0x517>
   110a8:	20 3d 3d 20 4e 4f    	and    %bh,0x4f4e203d
   110ae:	5f                   	pop    %edi
   110af:	54                   	push   %esp
   110b0:	41                   	inc    %ecx
   110b1:	53                   	push   %ebx
   110b2:	4b                   	dec    %ebx
   110b3:	00 62 79             	add    %ah,0x79(%edx)
   110b6:	74 65                	je     1111d <LOGDISKBUF_SIZE+0x51d>
   110b8:	20 64 75 6d          	and    %ah,0x6d(%ebp,%esi,2)
   110bc:	70 20                	jo     110de <LOGDISKBUF_SIZE+0x4de>
   110be:	6f                   	outsl  %ds:(%esi),(%dx)
   110bf:	66                   	data16
   110c0:	20 70 72             	and    %dh,0x72(%eax)
   110c3:	6f                   	outsl  %ds:(%esi),(%dx)
   110c4:	63 5f 74             	arpl   %bx,0x74(%edi)
   110c7:	61                   	popa   
   110c8:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   110cc:	25 64 5d 3a 0a       	and    $0xa3a5d64,%eax
   110d1:	00 25 78 2e 00 0a    	add    %ah,0xa002e78
   110d7:	0a 00                	or     (%eax),%al
   110d9:	41                   	inc    %ecx
   110da:	4e                   	dec    %esi
   110db:	59                   	pop    %ecx
   110dc:	3a 20                	cmp    (%eax),%ah
   110de:	30 78 25             	xor    %bh,0x25(%eax)
   110e1:	78 2e                	js     11111 <LOGDISKBUF_SIZE+0x511>
   110e3:	0a 00                	or     (%eax),%al
   110e5:	4e                   	dec    %esi
   110e6:	4f                   	dec    %edi
   110e7:	5f                   	pop    %edi
   110e8:	54                   	push   %esp
   110e9:	41                   	inc    %ecx
   110ea:	53                   	push   %ebx
   110eb:	4b                   	dec    %ebx
   110ec:	3a 20                	cmp    (%eax),%ah
   110ee:	30 78 25             	xor    %bh,0x25(%eax)
   110f1:	78 2e                	js     11121 <LOGDISKBUF_SIZE+0x521>
   110f3:	0a 00                	or     (%eax),%al
   110f5:	0a 00                	or     (%eax),%al
   110f7:	6c                   	insb   (%dx),%es:(%edi)
   110f8:	64                   	fs
   110f9:	74 5f                	je     1115a <LOGDISKBUF_SIZE+0x55a>
   110fb:	73 65                	jae    11162 <LOGDISKBUF_SIZE+0x562>
   110fd:	6c                   	insb   (%dx),%es:(%edi)
   110fe:	3a 20                	cmp    (%eax),%ah
   11100:	30 78 25             	xor    %bh,0x25(%eax)
   11103:	78 2e                	js     11133 <LOGDISKBUF_SIZE+0x533>
   11105:	20 20                	and    %ah,(%eax)
   11107:	00 63 6f             	add    %ah,0x6f(%ebx)
   1110a:	75 6e                	jne    1117a <LOGDISKBUF_SIZE+0x57a>
   1110c:	74 65                	je     11173 <LOGDISKBUF_SIZE+0x573>
   1110e:	72 3a                	jb     1114a <LOGDISKBUF_SIZE+0x54a>
   11110:	20 30                	and    %dh,(%eax)
   11112:	78 25                	js     11139 <LOGDISKBUF_SIZE+0x539>
   11114:	78 2e                	js     11144 <LOGDISKBUF_SIZE+0x544>
   11116:	20 20                	and    %ah,(%eax)
   11118:	00 70 72             	add    %dh,0x72(%eax)
   1111b:	69 6f 72 69 74 79 3a 	imul   $0x3a797469,0x72(%edi),%ebp
   11122:	20 30                	and    %dh,(%eax)
   11124:	78 25                	js     1114b <LOGDISKBUF_SIZE+0x54b>
   11126:	78 2e                	js     11156 <LOGDISKBUF_SIZE+0x556>
   11128:	20 20                	and    %ah,(%eax)
   1112a:	00 6e 61             	add    %ch,0x61(%esi)
   1112d:	6d                   	insl   (%dx),%es:(%edi)
   1112e:	65 3a 20             	cmp    %gs:(%eax),%ah
   11131:	25 73 2e 20 20       	and    $0x20202e73,%eax
   11136:	00 73 74             	add    %dh,0x74(%ebx)
   11139:	61                   	popa   
   1113a:	74 65                	je     111a1 <LOGDISKBUF_SIZE+0x5a1>
   1113c:	3a 20                	cmp    (%eax),%ah
   1113e:	30 78 25             	xor    %bh,0x25(%eax)
   11141:	78 2e                	js     11171 <LOGDISKBUF_SIZE+0x571>
   11143:	20 20                	and    %ah,(%eax)
   11145:	00 72 65             	add    %dh,0x65(%edx)
   11148:	63 76 66             	arpl   %si,0x66(%esi)
   1114b:	72 6f                	jb     111bc <LOGDISKBUF_SIZE+0x5bc>
   1114d:	6d                   	insl   (%dx),%es:(%edi)
   1114e:	3a 20                	cmp    (%eax),%ah
   11150:	30 78 25             	xor    %bh,0x25(%eax)
   11153:	78 2e                	js     11183 <LOGDISKBUF_SIZE+0x583>
   11155:	20 20                	and    %ah,(%eax)
   11157:	00 73 65             	add    %dh,0x65(%ebx)
   1115a:	6e                   	outsb  %ds:(%esi),(%dx)
   1115b:	64                   	fs
   1115c:	74 6f                	je     111cd <LOGDISKBUF_SIZE+0x5cd>
   1115e:	3a 20                	cmp    (%eax),%ah
   11160:	30 78 25             	xor    %bh,0x25(%eax)
   11163:	78 2e                	js     11193 <LOGDISKBUF_SIZE+0x593>
   11165:	20 20                	and    %ah,(%eax)
   11167:	00 68 61             	add    %ch,0x61(%eax)
   1116a:	73 5f                	jae    111cb <LOGDISKBUF_SIZE+0x5cb>
   1116c:	69 6e 74 5f 6d 73 67 	imul   $0x67736d5f,0x74(%esi),%ebp
   11173:	3a 20                	cmp    (%eax),%ah
   11175:	30 78 25             	xor    %bh,0x25(%eax)
   11178:	78 2e                	js     111a8 <LOGDISKBUF_SIZE+0x5a8>
   1117a:	20 20                	and    %ah,(%eax)
   1117c:	00 00                	add    %al,(%eax)
   1117e:	20 00                	and    %al,(%eax)
   11180:	0a 20                	or     (%eax),%ah
   11182:	20 20                	and    %ah,(%eax)
   11184:	20 20                	and    %ah,(%eax)
   11186:	20 20                	and    %ah,(%eax)
   11188:	20 00                	and    %al,(%eax)
   1118a:	00 00                	add    %al,(%eax)
   1118c:	7b 25                	jnp    111b3 <LOGDISKBUF_SIZE+0x5b3>
   1118e:	73 7d                	jae    1120d <LOGDISKBUF_SIZE+0x60d>
   11190:	3c 30                	cmp    $0x30,%al
   11192:	78 25                	js     111b9 <LOGDISKBUF_SIZE+0x5b9>
   11194:	78 3e                	js     111d4 <LOGDISKBUF_SIZE+0x5d4>
   11196:	7b 25                	jnp    111bd <LOGDISKBUF_SIZE+0x5bd>
   11198:	73 73                	jae    1120d <LOGDISKBUF_SIZE+0x60d>
   1119a:	72 63                	jb     111ff <LOGDISKBUF_SIZE+0x5ff>
   1119c:	3a 25 73 28 25 64    	cmp    0x64252873,%ah
   111a2:	29 2c 25 73 74 79 70 	sub    %ebp,0x70797473(,%eiz,1)
   111a9:	65 3a 25 64 2c 25 73 	cmp    %gs:0x73252c64,%ah
   111b0:	28 30                	sub    %dh,(%eax)
   111b2:	78 25                	js     111d9 <LOGDISKBUF_SIZE+0x5d9>
   111b4:	78 2c                	js     111e2 <LOGDISKBUF_SIZE+0x5e2>
   111b6:	20 30                	and    %dh,(%eax)
   111b8:	78 25                	js     111df <LOGDISKBUF_SIZE+0x5df>
   111ba:	78 2c                	js     111e8 <LOGDISKBUF_SIZE+0x5e8>
   111bc:	20 30                	and    %dh,(%eax)
   111be:	78 25                	js     111e5 <LOGDISKBUF_SIZE+0x5e5>
   111c0:	78 2c                	js     111ee <LOGDISKBUF_SIZE+0x5ee>
   111c2:	20 30                	and    %dh,(%eax)
   111c4:	78 25                	js     111eb <LOGDISKBUF_SIZE+0x5eb>
   111c6:	78 2c                	js     111f4 <LOGDISKBUF_SIZE+0x5f4>
   111c8:	20 30                	and    %dh,(%eax)
   111ca:	78 25                	js     111f1 <LOGDISKBUF_SIZE+0x5f1>
   111cc:	78 2c                	js     111fa <LOGDISKBUF_SIZE+0x5fa>
   111ce:	20 30                	and    %dh,(%eax)
   111d0:	78 25                	js     111f7 <LOGDISKBUF_SIZE+0x5f7>
   111d2:	78 29                	js     111fd <LOGDISKBUF_SIZE+0x5fd>
   111d4:	25 73 7d 25 73       	and    $0x73257d73,%eax
   111d9:	00 75 6e             	add    %dh,0x6e(%ebp)
   111dc:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   111e0:	6e                   	outsb  %ds:(%esi),(%dx)
   111e1:	20 6d 73             	and    %ch,0x73(%ebp)
   111e4:	67 20 74 79          	and    %dh,0x79(%si)
   111e8:	70 65                	jo     1124f <LOGDISKBUF_SIZE+0x64f>
   111ea:	00 00                	add    %al,(%eax)
   111ec:	6b 6c 69 62 2e       	imul   $0x2e,0x62(%ecx,%ebp,2),%ebp
   111f1:	63 00                	arpl   %ax,(%eax)
   111f3:	70 5b                	jo     11250 <LOGDISKBUF_SIZE+0x650>
   111f5:	42                   	inc    %edx
   111f6:	49                   	dec    %ecx
   111f7:	5f                   	pop    %edi
   111f8:	4d                   	dec    %ebp
   111f9:	41                   	inc    %ecx
   111fa:	47                   	inc    %edi
   111fb:	5d                   	pop    %ebp
   111fc:	20 3d 3d 20 42 4f    	and    %bh,0x4f42203d
   11202:	4f                   	dec    %edi
   11203:	54                   	push   %esp
   11204:	5f                   	pop    %edi
   11205:	50                   	push   %eax
   11206:	41                   	inc    %ecx
   11207:	52                   	push   %edx
   11208:	41                   	inc    %ecx
   11209:	4d                   	dec    %ebp
   1120a:	5f                   	pop    %edi
   1120b:	4d                   	dec    %ebp
   1120c:	41                   	inc    %ecx
   1120d:	47                   	inc    %edi
   1120e:	49                   	dec    %ecx
   1120f:	43                   	inc    %ebx
   11210:	00 7f 45             	add    %bh,0x45(%edi)
   11213:	4c                   	dec    %esp
   11214:	46                   	inc    %esi
   11215:	00 00                	add    %al,(%eax)
   11217:	00 6d 65             	add    %ch,0x65(%ebp)
   1121a:	6d                   	insl   (%dx),%es:(%edi)
   1121b:	63 6d 70             	arpl   %bp,0x70(%ebp)
   1121e:	28 70 62             	sub    %dh,0x62(%eax)
   11221:	70 2d                	jo     11250 <LOGDISKBUF_SIZE+0x650>
   11223:	3e 6b 65 72 6e       	imul   $0x6e,%ds:0x72(%ebp),%esp
   11228:	65                   	gs
   11229:	6c                   	insb   (%dx),%es:(%edi)
   1122a:	5f                   	pop    %edi
   1122b:	66 69 6c 65 2c 20 45 	imul   $0x4520,0x2c(%ebp,%eiz,2),%bp
   11232:	4c                   	dec    %esp
   11233:	46                   	inc    %esi
   11234:	4d                   	dec    %ebp
   11235:	41                   	inc    %ecx
   11236:	47                   	inc    %edi
   11237:	2c 20                	sub    $0x20,%al
   11239:	53                   	push   %ebx
   1123a:	45                   	inc    %ebp
   1123b:	4c                   	dec    %esp
   1123c:	46                   	inc    %esi
   1123d:	4d                   	dec    %ebp
   1123e:	41                   	inc    %ecx
   1123f:	47                   	inc    %edi
   11240:	29 20                	sub    %esp,(%eax)
   11242:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   11247:	2a 62 20             	sub    0x20(%edx),%ah
   1124a:	3c 20                	cmp    $0x20,%al
   1124c:	74 00                	je     1124e <LOGDISKBUF_SIZE+0x64e>
   1124e:	00 00                	add    %al,(%eax)
   11250:	46                   	inc    %esi
   11251:	53                   	push   %ebx
   11252:	3a 3a                	cmp    (%edx),%bh
   11254:	75 6e                	jne    112c4 <LOGDISKBUF_SIZE+0x6c4>
   11256:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   1125a:	6e                   	outsb  %ds:(%esi),(%dx)
   1125b:	20 6d 65             	and    %ch,0x65(%ebp)
   1125e:	73 73                	jae    112d3 <LOGDISKBUF_SIZE+0x6d3>
   11260:	61                   	popa   
   11261:	67 65 3a 00          	cmp    %gs:(%bx,%si),%al
   11265:	6d                   	insl   (%dx),%es:(%edi)
   11266:	61                   	popa   
   11267:	69 6e 2e 63 00 30 00 	imul   $0x300063,0x2e(%esi),%ebp
   1126e:	4f                   	dec    %edi
   1126f:	50                   	push   %eax
   11270:	45                   	inc    %ebp
   11271:	4e                   	dec    %esi
   11272:	00 43 4c             	add    %al,0x4c(%ebx)
   11275:	4f                   	dec    %edi
   11276:	53                   	push   %ebx
   11277:	45                   	inc    %ebp
   11278:	00 52 45             	add    %dl,0x45(%edx)
   1127b:	41                   	inc    %ecx
   1127c:	44                   	inc    %esp
   1127d:	00 57 52             	add    %dl,0x52(%edi)
   11280:	49                   	dec    %ecx
   11281:	54                   	push   %esp
   11282:	45                   	inc    %ebp
   11283:	00 4c 53 45          	add    %cl,0x45(%ebx,%edx,2)
   11287:	45                   	inc    %ebp
   11288:	4b                   	dec    %ebx
   11289:	00 55 4e             	add    %dl,0x4e(%ebp)
   1128c:	4c                   	dec    %esp
   1128d:	49                   	dec    %ecx
   1128e:	4e                   	dec    %esi
   1128f:	4b                   	dec    %ebx
   11290:	00 4d 4f             	add    %cl,0x4f(%ebp)
   11293:	55                   	push   %ebp
   11294:	4e                   	dec    %esi
   11295:	54                   	push   %esp
   11296:	00 55 4d             	add    %dl,0x4d(%ebp)
   11299:	4f                   	dec    %edi
   1129a:	55                   	push   %ebp
   1129b:	4e                   	dec    %esi
   1129c:	54                   	push   %esp
   1129d:	00 4d 4b             	add    %cl,0x4b(%ebp)
   112a0:	44                   	inc    %esp
   112a1:	49                   	dec    %ecx
   112a2:	52                   	push   %edx
   112a3:	00 46 4f             	add    %al,0x4f(%esi)
   112a6:	52                   	push   %edx
   112a7:	4b                   	dec    %ebx
   112a8:	00 45 58             	add    %al,0x58(%ebp)
   112ab:	49                   	dec    %ecx
   112ac:	54                   	push   %esp
   112ad:	00 53 54             	add    %dl,0x54(%ebx)
   112b0:	41                   	inc    %ecx
   112b1:	54                   	push   %esp
   112b2:	00 43 48             	add    %al,0x48(%ebx)
   112b5:	52                   	push   %edx
   112b6:	4f                   	dec    %edi
   112b7:	4f                   	dec    %edi
   112b8:	54                   	push   %esp
   112b9:	00 43 48             	add    %al,0x48(%ebx)
   112bc:	44                   	inc    %esp
   112bd:	49                   	dec    %ecx
   112be:	52                   	push   %edx
   112bf:	00 ee                	add    %ch,%dh
   112c1:	55                   	push   %ebp
   112c2:	00 00                	add    %al,(%eax)
   112c4:	fd                   	std    
   112c5:	55                   	push   %ebp
   112c6:	00 00                	add    %al,(%eax)
   112c8:	0c 56                	or     $0x56,%al
   112ca:	00 00                	add    %al,(%eax)
   112cc:	0c 56                	or     $0x56,%al
   112ce:	00 00                	add    %al,(%eax)
   112d0:	7c 56                	jl     11328 <LOGDISKBUF_SIZE+0x728>
   112d2:	00 00                	add    %al,(%eax)
   112d4:	88 56 00             	mov    %dl,0x0(%esi)
   112d7:	00 1b                	add    %bl,(%ebx)
   112d9:	56                   	push   %esi
   112da:	00 00                	add    %al,(%eax)
   112dc:	2a 56 00             	sub    0x0(%esi),%dl
   112df:	00 39                	add    %bh,(%ecx)
   112e1:	56                   	push   %esi
   112e2:	00 00                	add    %al,(%eax)
   112e4:	48                   	dec    %eax
   112e5:	56                   	push   %esi
   112e6:	00 00                	add    %al,(%eax)
   112e8:	94                   	xchg   %eax,%esp
   112e9:	56                   	push   %esi
   112ea:	00 00                	add    %al,(%eax)
   112ec:	a0 56 00 00 ac       	mov    0xac000056,%al
   112f1:	56                   	push   %esi
   112f2:	00 00                	add    %al,(%eax)
   112f4:	57                   	push   %edi
   112f5:	56                   	push   %esi
   112f6:	00 00                	add    %al,(%eax)
   112f8:	ac                   	lods   %ds:(%esi),%al
   112f9:	56                   	push   %esi
   112fa:	00 00                	add    %al,(%eax)
   112fc:	ac                   	lods   %ds:(%esi),%al
   112fd:	56                   	push   %esi
   112fe:	00 00                	add    %al,(%eax)
   11300:	ac                   	lods   %ds:(%esi),%al
   11301:	56                   	push   %esi
   11302:	00 00                	add    %al,(%eax)
   11304:	ac                   	lods   %ds:(%esi),%al
   11305:	56                   	push   %esi
   11306:	00 00                	add    %al,(%eax)
   11308:	ac                   	lods   %ds:(%esi),%al
   11309:	56                   	push   %esi
   1130a:	00 00                	add    %al,(%eax)
   1130c:	ac                   	lods   %ds:(%esi),%al
   1130d:	56                   	push   %esi
   1130e:	00 00                	add    %al,(%eax)
   11310:	ac                   	lods   %ds:(%esi),%al
   11311:	56                   	push   %esi
   11312:	00 00                	add    %al,(%eax)
   11314:	ac                   	lods   %ds:(%esi),%al
   11315:	56                   	push   %esi
   11316:	00 00                	add    %al,(%eax)
   11318:	ac                   	lods   %ds:(%esi),%al
   11319:	56                   	push   %esi
   1131a:	00 00                	add    %al,(%eax)
   1131c:	ac                   	lods   %ds:(%esi),%al
   1131d:	56                   	push   %esi
   1131e:	00 00                	add    %al,(%eax)
   11320:	ac                   	lods   %ds:(%esi),%al
   11321:	56                   	push   %esi
   11322:	00 00                	add    %al,(%eax)
   11324:	ac                   	lods   %ds:(%esi),%al
   11325:	56                   	push   %esi
   11326:	00 00                	add    %al,(%eax)
   11328:	ac                   	lods   %ds:(%esi),%al
   11329:	56                   	push   %esi
   1132a:	00 00                	add    %al,(%eax)
   1132c:	ac                   	lods   %ds:(%esi),%al
   1132d:	56                   	push   %esi
   1132e:	00 00                	add    %al,(%eax)
   11330:	64                   	fs
   11331:	56                   	push   %esi
   11332:	00 00                	add    %al,(%eax)
   11334:	70 56                	jo     1138c <LOGDISKBUF_SIZE+0x78c>
   11336:	00 00                	add    %al,(%eax)
   11338:	64                   	fs
   11339:	64                   	fs
   1133a:	5f                   	pop    %edi
   1133b:	6d                   	insl   (%dx),%es:(%edi)
   1133c:	61                   	popa   
   1133d:	70 5b                	jo     1139a <LOGDISKBUF_SIZE+0x79a>
   1133f:	4d                   	dec    %ebp
   11340:	41                   	inc    %ecx
   11341:	4a                   	dec    %edx
   11342:	4f                   	dec    %edi
   11343:	52                   	push   %edx
   11344:	28 52 4f             	sub    %dl,0x4f(%edx)
   11347:	4f                   	dec    %edi
   11348:	54                   	push   %esp
   11349:	5f                   	pop    %edi
   1134a:	44                   	inc    %esp
   1134b:	45                   	inc    %ebp
   1134c:	56                   	push   %esi
   1134d:	29 5d 2e             	sub    %ebx,0x2e(%ebp)
   11350:	64                   	fs
   11351:	72 69                	jb     113bc <LOGDISKBUF_SIZE+0x7bc>
   11353:	76 65                	jbe    113ba <LOGDISKBUF_SIZE+0x7ba>
   11355:	72 5f                	jb     113b6 <LOGDISKBUF_SIZE+0x7b6>
   11357:	6e                   	outsb  %ds:(%esi),(%dx)
   11358:	72 20                	jb     1137a <LOGDISKBUF_SIZE+0x77a>
   1135a:	21 3d 20 49 4e 56    	and    %edi,0x564e4920
   11360:	41                   	inc    %ecx
   11361:	4c                   	dec    %esp
   11362:	49                   	dec    %ecx
   11363:	44                   	inc    %esp
   11364:	5f                   	pop    %edi
   11365:	44                   	inc    %esp
   11366:	52                   	push   %edx
   11367:	49                   	dec    %ecx
   11368:	56                   	push   %esi
   11369:	45                   	inc    %ebp
   1136a:	52                   	push   %edx
   1136b:	00 49 6e             	add    %cl,0x6e(%ecx)
   1136e:	73 65                	jae    113d5 <LOGDISKBUF_SIZE+0x7d5>
   11370:	72 74                	jb     113e6 <LOGDISKBUF_SIZE+0x7e6>
   11372:	20 72 6f             	and    %dh,0x6f(%edx)
   11375:	6f                   	outsl  %ds:(%esi),(%dx)
   11376:	74 20                	je     11398 <LOGDISKBUF_SIZE+0x798>
   11378:	66                   	data16
   11379:	6c                   	insb   (%dx),%es:(%edi)
   1137a:	6f                   	outsl  %ds:(%esi),(%dx)
   1137b:	70 70                	jo     113ed <LOGDISKBUF_SIZE+0x7ed>
   1137d:	79 20                	jns    1139f <LOGDISKBUF_SIZE+0x79f>
   1137f:	61                   	popa   
   11380:	6e                   	outsb  %ds:(%esi),(%dx)
   11381:	64 20 70 72          	and    %dh,%fs:0x72(%eax)
   11385:	65                   	gs
   11386:	73 73                	jae    113fb <LOGDISKBUF_SIZE+0x7fb>
   11388:	20 45 4e             	and    %al,0x4e(%ebp)
   1138b:	54                   	push   %esp
   1138c:	45                   	inc    %ebp
   1138d:	52                   	push   %edx
   1138e:	0a 00                	or     (%eax),%al
   11390:	4d                   	dec    %ebp
   11391:	6b 66 73 20          	imul   $0x20,0x73(%esi),%esp
   11395:	6f                   	outsl  %ds:(%esi),(%dx)
   11396:	6e                   	outsb  %ds:(%esi),(%dx)
   11397:	20 72 6f             	and    %dh,0x6f(%edx)
   1139a:	6f                   	outsl  %ds:(%esi),(%dx)
   1139b:	74 20                	je     113bd <LOGDISKBUF_SIZE+0x7bd>
   1139d:	64                   	fs
   1139e:	65                   	gs
   1139f:	76 69                	jbe    1140a <LOGDISKBUF_SIZE+0x80a>
   113a1:	63 65 2e             	arpl   %sp,0x2e(%ebp)
   113a4:	2e 2e 00 73 62       	cs add %dh,%cs:0x62(%ebx)
   113a9:	2d 3e 6d 61 67       	sub    $0x67616d3e,%eax
   113ae:	69 63 20 3d 3d 20 4d 	imul   $0x4d203d3d,0x20(%ebx),%esp
   113b5:	41                   	inc    %ecx
   113b6:	47                   	inc    %edi
   113b7:	49                   	dec    %ecx
   113b8:	43                   	inc    %ebx
   113b9:	5f                   	pop    %edi
   113ba:	56                   	push   %esi
   113bb:	31 00                	xor    %eax,(%eax)
   113bd:	00 00                	add    %al,(%eax)
   113bf:	00 46 53             	add    %al,0x53(%esi)
   113c2:	3a 20                	cmp    (%eax),%ah
   113c4:	4d                   	dec    %ebp
   113c5:	6f                   	outsl  %ds:(%esi),(%dx)
   113c6:	75 6e                	jne    11436 <LOGDISKBUF_SIZE+0x836>
   113c8:	74 65                	je     1142f <LOGDISKBUF_SIZE+0x82f>
   113ca:	64 20 72 6f          	and    %dh,%fs:0x6f(%edx)
   113ce:	6f                   	outsl  %ds:(%esi),(%dx)
   113cf:	74 28                	je     113f9 <LOGDISKBUF_SIZE+0x7f9>
   113d1:	4c                   	dec    %esp
   113d2:	79 6f                	jns    11443 <LOGDISKBUF_SIZE+0x843>
   113d4:	73 20                	jae    113f6 <LOGDISKBUF_SIZE+0x7f6>
   113d6:	66 69 6c 65 73 79 73 	imul   $0x7379,0x73(%ebp,%eiz,2),%bp
   113dd:	74 65                	je     11444 <LOGDISKBUF_SIZE+0x844>
   113df:	6d                   	insl   (%dx),%es:(%edi)
   113e0:	29 0a                	sub    %ecx,(%edx)
   113e2:	00 00                	add    %al,(%eax)
   113e4:	61                   	popa   
   113e5:	6e                   	outsb  %ds:(%esi),(%dx)
   113e6:	20 4c 79 6f          	and    %cl,0x6f(%ecx,%edi,2)
   113ea:	73 20                	jae    1140c <LOGDISKBUF_SIZE+0x80c>
   113ec:	66 69 6c 65 73 79 73 	imul   $0x7379,0x73(%ebp,%eiz,2),%bp
   113f3:	74 65                	je     1145a <LOGDISKBUF_SIZE+0x85a>
   113f5:	6d                   	insl   (%dx),%es:(%edi)
   113f6:	20 66 6f             	and    %ah,0x6f(%esi)
   113f9:	75 6e                	jne    11469 <LOGDISKBUF_SIZE+0x869>
   113fb:	64                   	fs
   113fc:	2c 20                	sub    $0x20,%al
   113fe:	6e                   	outsb  %ds:(%esi),(%dx)
   113ff:	65 65 64 20 6e 6f    	gs gs and %ch,%fs:%gs:0x6f(%esi)
   11405:	20 6d 6b             	and    %ch,0x6b(%ebp)
   11408:	66                   	data16
   11409:	73 0a                	jae    11415 <LOGDISKBUF_SIZE+0x815>
   1140b:	00 66 73             	add    %ah,0x73(%esi)
   1140e:	62 75 66             	bound  %esi,0x66(%ebp)
   11411:	5b                   	pop    %ebx
   11412:	30 5d 20             	xor    %bl,0x20(%ebp)
   11415:	3d 3d 20 30 78       	cmp    $0x7830203d,%eax
   1141a:	37                   	aaa    
   1141b:	46                   	inc    %esi
   1141c:	00 00                	add    %al,(%eax)
   1141e:	00 00                	add    %al,(%eax)
   11420:	49                   	dec    %ecx
   11421:	4e                   	dec    %esi
   11422:	53                   	push   %ebx
   11423:	54                   	push   %esp
   11424:	41                   	inc    %ecx
   11425:	4c                   	dec    %esp
   11426:	4c                   	dec    %esp
   11427:	5f                   	pop    %edi
   11428:	53                   	push   %ebx
   11429:	54                   	push   %esp
   1142a:	41                   	inc    %ecx
   1142b:	52                   	push   %edx
   1142c:	54                   	push   %esp
   1142d:	5f                   	pop    %edi
   1142e:	53                   	push   %ebx
   1142f:	45                   	inc    %ebp
   11430:	43                   	inc    %ebx
   11431:	54                   	push   %esp
   11432:	20 2b                	and    %ch,(%ebx)
   11434:	20 49 4e             	and    %cl,0x4e(%ecx)
   11437:	53                   	push   %ebx
   11438:	54                   	push   %esp
   11439:	41                   	inc    %ecx
   1143a:	4c                   	dec    %esp
   1143b:	4c                   	dec    %esp
   1143c:	5f                   	pop    %edi
   1143d:	4e                   	dec    %esi
   1143e:	52                   	push   %edx
   1143f:	5f                   	pop    %edi
   11440:	53                   	push   %ebx
   11441:	45                   	inc    %ebp
   11442:	43                   	inc    %ebx
   11443:	54                   	push   %esp
   11444:	53                   	push   %ebx
   11445:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   11448:	73 62                	jae    114ac <LOGDISKBUF_SIZE+0x8ac>
   1144a:	2e 6e                	outsb  %cs:(%esi),(%dx)
   1144c:	72 5f                	jb     114ad <LOGDISKBUF_SIZE+0x8ad>
   1144e:	73 65                	jae    114b5 <LOGDISKBUF_SIZE+0x8b5>
   11450:	63 74 73 20          	arpl   %si,0x20(%ebx,%esi,2)
   11454:	2d 20 4e 52 5f       	sub    $0x5f524e20,%eax
   11459:	53                   	push   %ebx
   1145a:	45                   	inc    %ebp
   1145b:	43                   	inc    %ebx
   1145c:	54                   	push   %esp
   1145d:	53                   	push   %ebx
   1145e:	5f                   	pop    %edi
   1145f:	46                   	inc    %esi
   11460:	4f                   	dec    %edi
   11461:	52                   	push   %edx
   11462:	5f                   	pop    %edi
   11463:	4c                   	dec    %esp
   11464:	4f                   	dec    %edi
   11465:	47                   	inc    %edi
   11466:	00 2e                	add    %ch,(%esi)
   11468:	00 64 65 76          	add    %ah,0x76(%ebp,%eiz,2)
   1146c:	5f                   	pop    %edi
   1146d:	74 74                	je     114e3 <LOGDISKBUF_SIZE+0x8e3>
   1146f:	79 25                	jns    11496 <LOGDISKBUF_SIZE+0x896>
   11471:	64 00 72 6f          	add    %dh,%fs:0x6f(%edx)
   11475:	6f                   	outsl  %ds:(%esi),(%dx)
   11476:	74 00                	je     11478 <LOGDISKBUF_SIZE+0x878>
   11478:	63 6d 64             	arpl   %bp,0x64(%ebp)
   1147b:	2e 74 61             	je,pn  114df <LOGDISKBUF_SIZE+0x8df>
   1147e:	72 00                	jb     11480 <LOGDISKBUF_SIZE+0x880>
   11480:	64 6f                	outsl  %fs:(%esi),(%dx)
   11482:	6e                   	outsb  %ds:(%esi),(%dx)
   11483:	65 2e 00 00          	gs add %al,%cs:%gs:(%eax)
   11487:	00 64 64 5f          	add    %ah,0x5f(%esp,%eiz,2)
   1148b:	6d                   	insl   (%dx),%es:(%edi)
   1148c:	61                   	popa   
   1148d:	70 5b                	jo     114ea <LOGDISKBUF_SIZE+0x8ea>
   1148f:	4d                   	dec    %ebp
   11490:	41                   	inc    %ecx
   11491:	4a                   	dec    %edx
   11492:	4f                   	dec    %edi
   11493:	52                   	push   %edx
   11494:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   11498:	29 5d 2e             	sub    %ebx,0x2e(%ebp)
   1149b:	64                   	fs
   1149c:	72 69                	jb     11507 <LOGDISKBUF_SIZE+0x907>
   1149e:	76 65                	jbe    11505 <LOGDISKBUF_SIZE+0x905>
   114a0:	72 5f                	jb     11501 <LOGDISKBUF_SIZE+0x901>
   114a2:	6e                   	outsb  %ds:(%esi),(%dx)
   114a3:	72 20                	jb     114c5 <LOGDISKBUF_SIZE+0x8c5>
   114a5:	21 3d 20 49 4e 56    	and    %edi,0x564e4920
   114ab:	41                   	inc    %ecx
   114ac:	4c                   	dec    %esp
   114ad:	49                   	dec    %ecx
   114ae:	44                   	inc    %esp
   114af:	5f                   	pop    %edi
   114b0:	44                   	inc    %esp
   114b1:	52                   	push   %edx
   114b2:	49                   	dec    %ecx
   114b3:	56                   	push   %esi
   114b4:	45                   	inc    %ebp
   114b5:	52                   	push   %edx
   114b6:	00 73 75             	add    %dh,0x75(%ebx)
   114b9:	70 65                	jo     11520 <LOGDISKBUF_SIZE+0x920>
   114bb:	72 5f                	jb     1151c <LOGDISKBUF_SIZE+0x91c>
   114bd:	62 6c 6f 63          	bound  %ebp,0x63(%edi,%ebp,2)
   114c1:	6b 20 73             	imul   $0x73,(%eax),%esp
   114c4:	6c                   	insb   (%dx),%es:(%edi)
   114c5:	6f                   	outsl  %ds:(%esi),(%dx)
   114c6:	74 73                	je     1153b <LOGDISKBUF_SIZE+0x93b>
   114c8:	20 75 73             	and    %dh,0x73(%ebp)
   114cb:	65 64 20 75 70       	gs and %dh,%fs:%gs:0x70(%ebp)
   114d0:	00 00                	add    %al,(%eax)
   114d2:	00 00                	add    %al,(%eax)
   114d4:	73 75                	jae    1154b <LOGDISKBUF_SIZE+0x94b>
   114d6:	70 65                	jo     1153d <LOGDISKBUF_SIZE+0x93d>
   114d8:	72 20                	jb     114fa <LOGDISKBUF_SIZE+0x8fa>
   114da:	62 6c 6f 63          	bound  %ebp,0x63(%edi,%ebp,2)
   114de:	6b 20 6f             	imul   $0x6f,(%eax),%esp
   114e1:	66                   	data16
   114e2:	20 64 65 76          	and    %ah,0x76(%ebp,%eiz,2)
   114e6:	69 63 65 20 25 64 20 	imul   $0x20642520,0x65(%ebx),%esp
   114ed:	6e                   	outsb  %ds:(%esi),(%dx)
   114ee:	6f                   	outsl  %ds:(%esi),(%dx)
   114ef:	74 20                	je     11511 <LOGDISKBUF_SIZE+0x911>
   114f1:	66 6f                	outsw  %ds:(%esi),(%dx)
   114f3:	75 6e                	jne    11563 <LOGDISKBUF_SIZE+0x963>
   114f5:	64 2e 0a 00          	fs or  %cs:%fs:(%eax),%al
   114f9:	74 68                	je     11563 <LOGDISKBUF_SIZE+0x963>
   114fb:	65 20 69 6e          	and    %ch,%gs:0x6e(%ecx)
   114ff:	6f                   	outsl  %ds:(%esi),(%dx)
   11500:	64 65 20 74 61 62    	fs and %dh,%fs:%gs:0x62(%ecx,%eiz,2)
   11506:	6c                   	insb   (%dx),%es:(%edi)
   11507:	65 20 69 73          	and    %ch,%gs:0x73(%ecx)
   1150b:	20 66 75             	and    %ah,0x75(%esi)
   1150e:	6c                   	insb   (%dx),%es:(%edi)
   1150f:	6c                   	insb   (%dx),%es:(%edi)
   11510:	00 70 69             	add    %dh,0x69(%eax)
   11513:	6e                   	outsb  %ds:(%esi),(%dx)
   11514:	6f                   	outsl  %ds:(%esi),(%dx)
   11515:	64                   	fs
   11516:	65                   	gs
   11517:	2d 3e 69 5f 63       	sub    $0x635f693e,%eax
   1151c:	6e                   	outsb  %ds:(%esi),(%dx)
   1151d:	74 20                	je     1153f <LOGDISKBUF_SIZE+0x93f>
   1151f:	3e 20 30             	and    %dh,%ds:(%eax)
   11522:	00 00                	add    %al,(%eax)
   11524:	6f                   	outsl  %ds:(%esi),(%dx)
   11525:	70 65                	jo     1158c <LOGDISKBUF_SIZE+0x98c>
   11527:	6e                   	outsb  %ds:(%esi),(%dx)
   11528:	2e 63 00             	arpl   %ax,%cs:(%eax)
   1152b:	6e                   	outsb  %ds:(%esi),(%dx)
   1152c:	61                   	popa   
   1152d:	6d                   	insl   (%dx),%es:(%edi)
   1152e:	65                   	gs
   1152f:	5f                   	pop    %edi
   11530:	6c                   	insb   (%dx),%es:(%edi)
   11531:	65 6e                	outsb  %gs:(%esi),(%dx)
   11533:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   11536:	4d                   	dec    %ebp
   11537:	41                   	inc    %ecx
   11538:	58                   	pop    %eax
   11539:	5f                   	pop    %edi
   1153a:	50                   	push   %eax
   1153b:	41                   	inc    %ecx
   1153c:	54                   	push   %esp
   1153d:	48                   	dec    %eax
   1153e:	00 66 69             	add    %ah,0x69(%esi)
   11541:	6c                   	insb   (%dx),%es:(%edi)
   11542:	70 5b                	jo     1159f <LOGDISKBUF_SIZE+0x99f>
   11544:	5d                   	pop    %ebp
   11545:	20 69 73             	and    %ch,0x73(%ecx)
   11548:	20 66 75             	and    %ah,0x75(%esi)
   1154b:	6c                   	insb   (%dx),%es:(%edi)
   1154c:	6c                   	insb   (%dx),%es:(%edi)
   1154d:	20 28                	and    %ch,(%eax)
   1154f:	50                   	push   %eax
   11550:	49                   	dec    %ecx
   11551:	44                   	inc    %esp
   11552:	3a 25 64 29 00 00    	cmp    0x2964,%ah
   11558:	66 5f                	pop    %di
   1155a:	64                   	fs
   1155b:	65                   	gs
   1155c:	73 63                	jae    115c1 <LOGDISKBUF_SIZE+0x9c1>
   1155e:	5f                   	pop    %edi
   1155f:	74 61                	je     115c2 <LOGDISKBUF_SIZE+0x9c2>
   11561:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   11565:	5d                   	pop    %ebp
   11566:	20 69 73             	and    %ch,0x73(%ecx)
   11569:	20 66 75             	and    %ah,0x75(%esi)
   1156c:	6c                   	insb   (%dx),%es:(%edi)
   1156d:	6c                   	insb   (%dx),%es:(%edi)
   1156e:	20 28                	and    %ch,(%eax)
   11570:	50                   	push   %eax
   11571:	49                   	dec    %ecx
   11572:	44                   	inc    %esp
   11573:	3a 25 64 29 00 66    	cmp    0x66002964,%ah
   11579:	6c                   	insb   (%dx),%es:(%edi)
   1157a:	61                   	popa   
   1157b:	67 73 20             	addr16 jae 1159e <LOGDISKBUF_SIZE+0x99e>
   1157e:	3d 3d 20 28 4f       	cmp    $0x4f28203d,%eax
   11583:	5f                   	pop    %edi
   11584:	52                   	push   %edx
   11585:	44                   	inc    %esp
   11586:	57                   	push   %edi
   11587:	52                   	push   %edx
   11588:	20 7c 20 4f          	and    %bh,0x4f(%eax,%eiz,1)
   1158c:	5f                   	pop    %edi
   1158d:	43                   	inc    %ebx
   1158e:	52                   	push   %edx
   1158f:	45                   	inc    %ebp
   11590:	41                   	inc    %ecx
   11591:	54                   	push   %esp
   11592:	29 00                	sub    %eax,(%eax)
   11594:	28 66 6c             	sub    %ah,0x6c(%esi)
   11597:	61                   	popa   
   11598:	67 73 20             	addr16 jae 115bb <LOGDISKBUF_SIZE+0x9bb>
   1159b:	3d 3d 20 4f 5f       	cmp    $0x5f4f203d,%eax
   115a0:	52                   	push   %edx
   115a1:	44                   	inc    %esp
   115a2:	57                   	push   %edi
   115a3:	52                   	push   %edx
   115a4:	20 29                	and    %ch,(%ecx)
   115a6:	20 7c 7c 20          	and    %bh,0x20(%esp,%edi,2)
   115aa:	28 66 6c             	sub    %ah,0x6c(%esi)
   115ad:	61                   	popa   
   115ae:	67 73 20             	addr16 jae 115d1 <LOGDISKBUF_SIZE+0x9d1>
   115b1:	3d 3d 20 28 4f       	cmp    $0x4f28203d,%eax
   115b6:	5f                   	pop    %edi
   115b7:	52                   	push   %edx
   115b8:	44                   	inc    %esp
   115b9:	57                   	push   %edi
   115ba:	52                   	push   %edx
   115bb:	20 7c 20 4f          	and    %bh,0x4f(%eax,%eiz,1)
   115bf:	5f                   	pop    %edi
   115c0:	54                   	push   %esp
   115c1:	52                   	push   %edx
   115c2:	55                   	push   %ebp
   115c3:	4e                   	dec    %esi
   115c4:	43                   	inc    %ebx
   115c5:	20 29                	and    %ch,(%ecx)
   115c7:	29 20                	sub    %esp,(%eax)
   115c9:	7c 7c                	jl     11647 <LOGDISKBUF_SIZE+0xa47>
   115cb:	20 28                	and    %ch,(%eax)
   115cd:	66                   	data16
   115ce:	6c                   	insb   (%dx),%es:(%edi)
   115cf:	61                   	popa   
   115d0:	67 73 20             	addr16 jae 115f3 <LOGDISKBUF_SIZE+0x9f3>
   115d3:	3d 3d 20 28 4f       	cmp    $0x4f28203d,%eax
   115d8:	5f                   	pop    %edi
   115d9:	52                   	push   %edx
   115da:	44                   	inc    %esp
   115db:	57                   	push   %edi
   115dc:	52                   	push   %edx
   115dd:	20 7c 20 4f          	and    %bh,0x4f(%eax,%eiz,1)
   115e1:	5f                   	pop    %edi
   115e2:	54                   	push   %esp
   115e3:	52                   	push   %edx
   115e4:	55                   	push   %ebp
   115e5:	4e                   	dec    %esi
   115e6:	43                   	inc    %ebx
   115e7:	20 7c 20 4f          	and    %bh,0x4f(%eax,%eiz,1)
   115eb:	5f                   	pop    %edi
   115ec:	43                   	inc    %ebx
   115ed:	52                   	push   %edx
   115ee:	45                   	inc    %ebp
   115ef:	41                   	inc    %ecx
   115f0:	54                   	push   %esp
   115f1:	29 29                	sub    %ebp,(%ecx)
   115f3:	00 70 69             	add    %dh,0x69(%eax)
   115f6:	6e                   	outsb  %ds:(%esi),(%dx)
   115f7:	00 4d 41             	add    %cl,0x41(%ebp)
   115fa:	4a                   	dec    %edx
   115fb:	4f                   	dec    %edi
   115fc:	52                   	push   %edx
   115fd:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   11601:	29 20                	sub    %esp,(%eax)
   11603:	3d 3d 20 34 00       	cmp    $0x34203d,%eax
   11608:	64                   	fs
   11609:	64                   	fs
   1160a:	5f                   	pop    %edi
   1160b:	6d                   	insl   (%dx),%es:(%edi)
   1160c:	61                   	popa   
   1160d:	70 5b                	jo     1166a <LOGDISKBUF_SIZE+0xa6a>
   1160f:	4d                   	dec    %ebp
   11610:	41                   	inc    %ecx
   11611:	4a                   	dec    %edx
   11612:	4f                   	dec    %edi
   11613:	52                   	push   %edx
   11614:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   11618:	29 5d 2e             	sub    %ebx,0x2e(%ebp)
   1161b:	64                   	fs
   1161c:	72 69                	jb     11687 <LOGDISKBUF_SIZE+0xa87>
   1161e:	76 65                	jbe    11685 <LOGDISKBUF_SIZE+0xa85>
   11620:	72 5f                	jb     11681 <LOGDISKBUF_SIZE+0xa81>
   11622:	6e                   	outsb  %ds:(%esi),(%dx)
   11623:	72 20                	jb     11645 <LOGDISKBUF_SIZE+0xa45>
   11625:	21 3d 20 49 4e 56    	and    %edi,0x564e4920
   1162b:	41                   	inc    %ecx
   1162c:	4c                   	dec    %esp
   1162d:	49                   	dec    %ecx
   1162e:	44                   	inc    %esp
   1162f:	5f                   	pop    %edi
   11630:	44                   	inc    %esp
   11631:	52                   	push   %edx
   11632:	49                   	dec    %ecx
   11633:	56                   	push   %esi
   11634:	45                   	inc    %ebp
   11635:	52                   	push   %edx
   11636:	00 70 69             	add    %dh,0x69(%eax)
   11639:	6e                   	outsb  %ds:(%esi),(%dx)
   1163a:	2d 3e 69 5f 6d       	sub    $0x6d5f693e,%eax
   1163f:	6f                   	outsl  %ds:(%esi),(%dx)
   11640:	64 65 20 3d 3d 20 49 	fs and %bh,%fs:%gs:0x5f49203d
   11647:	5f 
   11648:	52                   	push   %edx
   11649:	45                   	inc    %ebp
   1164a:	47                   	inc    %edi
   1164b:	55                   	push   %ebp
   1164c:	4c                   	dec    %esp
   1164d:	41                   	inc    %ecx
   1164e:	52                   	push   %edx
   1164f:	00 69 6e             	add    %ch,0x6e(%ecx)
   11652:	6f                   	outsl  %ds:(%esi),(%dx)
   11653:	64                   	fs
   11654:	65                   	gs
   11655:	2d 6d 61 70 20       	sub    $0x2070616d,%eax
   1165a:	69 73 20 70 72 6f 62 	imul   $0x626f7270,0x20(%ebx),%esi
   11661:	61                   	popa   
   11662:	62 6c 79 20          	bound  %ebp,0x20(%ecx,%edi,2)
   11666:	66                   	data16
   11667:	75 6c                	jne    116d5 <LOGDISKBUF_SIZE+0xad5>
   11669:	6c                   	insb   (%dx),%es:(%edi)
   1166a:	2e 0a 00             	or     %cs:(%eax),%al
   1166d:	6e                   	outsb  %ds:(%esi),(%dx)
   1166e:	72 5f                	jb     116cf <LOGDISKBUF_SIZE+0xacf>
   11670:	73 65                	jae    116d7 <LOGDISKBUF_SIZE+0xad7>
   11672:	63 74 73 5f          	arpl   %si,0x5f(%ebx,%esi,2)
   11676:	74 6f                	je     116e7 <LOGDISKBUF_SIZE+0xae7>
   11678:	5f                   	pop    %edi
   11679:	61                   	popa   
   1167a:	6c                   	insb   (%dx),%es:(%edi)
   1167b:	6c                   	insb   (%dx),%es:(%edi)
   1167c:	6f                   	outsl  %ds:(%esi),(%dx)
   1167d:	63 20                	arpl   %sp,(%eax)
   1167f:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   11684:	6d                   	insl   (%dx),%es:(%edi)
   11685:	69 73 63 2e 63 00 6e 	imul   $0x6e00632e,0x63(%ebx),%esi
   1168c:	61                   	popa   
   1168d:	6d                   	insl   (%dx),%es:(%edi)
   1168e:	65                   	gs
   1168f:	5f                   	pop    %edi
   11690:	6c                   	insb   (%dx),%es:(%edi)
   11691:	65 6e                	outsb  %gs:(%esi),(%dx)
   11693:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   11696:	4d                   	dec    %ebp
   11697:	41                   	inc    %ecx
   11698:	58                   	pop    %eax
   11699:	5f                   	pop    %edi
   1169a:	50                   	push   %eax
   1169b:	41                   	inc    %ecx
   1169c:	54                   	push   %esp
   1169d:	48                   	dec    %eax
   1169e:	00 00                	add    %al,(%eax)
   116a0:	64 6f                	outsl  %fs:(%esi),(%dx)
   116a2:	5f                   	pop    %edi
   116a3:	73 74                	jae    11719 <LOGDISKBUF_SIZE+0xb19>
   116a5:	61                   	popa   
   116a6:	74 28                	je     116d0 <LOGDISKBUF_SIZE+0xad0>
   116a8:	29 3a                	sub    %edi,(%edx)
   116aa:	3a 20                	cmp    (%eax),%ah
   116ac:	73 65                	jae    11713 <LOGDISKBUF_SIZE+0xb13>
   116ae:	61                   	popa   
   116af:	72 63                	jb     11714 <LOGDISKBUF_SIZE+0xb14>
   116b1:	68 5f 66 69 6c       	push   $0x6c69665f
   116b6:	65 28 29             	sub    %ch,%gs:(%ecx)
   116b9:	20 72 65             	and    %dh,0x65(%edx)
   116bc:	74 75                	je     11733 <LOGDISKBUF_SIZE+0xb33>
   116be:	72 6e                	jb     1172e <LOGDISKBUF_SIZE+0xb2e>
   116c0:	73 20                	jae    116e2 <LOGDISKBUF_SIZE+0xae2>
   116c2:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   116c9:	20 69 6e             	and    %ch,0x6e(%ecx)
   116cc:	6f                   	outsl  %ds:(%esi),(%dx)
   116cd:	64 65 3a 20          	fs cmp %fs:%gs:(%eax),%ah
   116d1:	25 73 0a 00 30       	and    $0x30000a73,%eax
   116d6:	00 00                	add    %al,(%eax)
   116d8:	72 65                	jb     1173f <LOGDISKBUF_SIZE+0xb3f>
   116da:	61                   	popa   
   116db:	64                   	fs
   116dc:	5f                   	pop    %edi
   116dd:	77 72                	ja     11751 <LOGDISKBUF_SIZE+0xb51>
   116df:	69 74 65 2e 63 00 00 	imul   $0x63,0x2e(%ebp,%eiz,2),%esi
   116e6:	00 
   116e7:	00 28                	add    %ch,(%eax)
   116e9:	70 63                	jo     1174e <LOGDISKBUF_SIZE+0xb4e>
   116eb:	61                   	popa   
   116ec:	6c                   	insb   (%dx),%es:(%edi)
   116ed:	6c                   	insb   (%dx),%es:(%edi)
   116ee:	65                   	gs
   116ef:	72 2d                	jb     1171e <LOGDISKBUF_SIZE+0xb1e>
   116f1:	3e 66 69 6c 70 5b 66 	imul   $0x6466,%ds:0x5b(%eax,%esi,2),%bp
   116f8:	64 
   116f9:	5d                   	pop    %ebp
   116fa:	20 3e                	and    %bh,(%esi)
   116fc:	3d 20 26 66 5f       	cmp    $0x5f662620,%eax
   11701:	64                   	fs
   11702:	65                   	gs
   11703:	73 63                	jae    11768 <LOGDISKBUF_SIZE+0xb68>
   11705:	5f                   	pop    %edi
   11706:	74 61                	je     11769 <LOGDISKBUF_SIZE+0xb69>
   11708:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   1170c:	30 5d 29             	xor    %bl,0x29(%ebp)
   1170f:	20 26                	and    %ah,(%esi)
   11711:	26 20 28             	and    %ch,%es:(%eax)
   11714:	70 63                	jo     11779 <LOGDISKBUF_SIZE+0xb79>
   11716:	61                   	popa   
   11717:	6c                   	insb   (%dx),%es:(%edi)
   11718:	6c                   	insb   (%dx),%es:(%edi)
   11719:	65                   	gs
   1171a:	72 2d                	jb     11749 <LOGDISKBUF_SIZE+0xb49>
   1171c:	3e 66 69 6c 70 5b 66 	imul   $0x6466,%ds:0x5b(%eax,%esi,2),%bp
   11723:	64 
   11724:	5d                   	pop    %ebp
   11725:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   11728:	26                   	es
   11729:	66 5f                	pop    %di
   1172b:	64                   	fs
   1172c:	65                   	gs
   1172d:	73 63                	jae    11792 <LOGDISKBUF_SIZE+0xb92>
   1172f:	5f                   	pop    %edi
   11730:	74 61                	je     11793 <LOGDISKBUF_SIZE+0xb93>
   11732:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   11736:	4e                   	dec    %esi
   11737:	52                   	push   %edx
   11738:	5f                   	pop    %edi
   11739:	46                   	inc    %esi
   1173a:	49                   	dec    %ecx
   1173b:	4c                   	dec    %esp
   1173c:	45                   	inc    %ebp
   1173d:	5f                   	pop    %edi
   1173e:	44                   	inc    %esp
   1173f:	45                   	inc    %ebp
   11740:	53                   	push   %ebx
   11741:	43                   	inc    %ebx
   11742:	5d                   	pop    %ebp
   11743:	29 00                	sub    %eax,(%eax)
   11745:	00 00                	add    %al,(%eax)
   11747:	00 70 69             	add    %dh,0x69(%eax)
   1174a:	6e                   	outsb  %ds:(%esi),(%dx)
   1174b:	20 3e                	and    %bh,(%esi)
   1174d:	3d 20 26 69 6e       	cmp    $0x6e692620,%eax
   11752:	6f                   	outsl  %ds:(%esi),(%dx)
   11753:	64                   	fs
   11754:	65                   	gs
   11755:	5f                   	pop    %edi
   11756:	74 61                	je     117b9 <LOGDISKBUF_SIZE+0xbb9>
   11758:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   1175c:	30 5d 20             	xor    %bl,0x20(%ebp)
   1175f:	26 26 20 70 69       	es and %dh,%es:0x69(%eax)
   11764:	6e                   	outsb  %ds:(%esi),(%dx)
   11765:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   11768:	26 69 6e 6f 64 65 5f 	imul   $0x745f6564,%es:0x6f(%esi),%ebp
   1176f:	74 
   11770:	61                   	popa   
   11771:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   11775:	4e                   	dec    %esi
   11776:	52                   	push   %edx
   11777:	5f                   	pop    %edi
   11778:	49                   	dec    %ecx
   11779:	4e                   	dec    %esi
   1177a:	4f                   	dec    %edi
   1177b:	44                   	inc    %esp
   1177c:	45                   	inc    %ebp
   1177d:	5d                   	pop    %ebp
   1177e:	00 4d 41             	add    %cl,0x41(%ebp)
   11781:	4a                   	dec    %edx
   11782:	4f                   	dec    %edi
   11783:	52                   	push   %edx
   11784:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   11788:	29 20                	sub    %esp,(%eax)
   1178a:	3d 3d 20 34 00       	cmp    $0x34203d,%eax
   1178f:	00 64 64 5f          	add    %ah,0x5f(%esp,%eiz,2)
   11793:	6d                   	insl   (%dx),%es:(%edi)
   11794:	61                   	popa   
   11795:	70 5b                	jo     117f2 <LOGDISKBUF_SIZE+0xbf2>
   11797:	4d                   	dec    %ebp
   11798:	41                   	inc    %ecx
   11799:	4a                   	dec    %edx
   1179a:	4f                   	dec    %edi
   1179b:	52                   	push   %edx
   1179c:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   117a0:	29 5d 2e             	sub    %ebx,0x2e(%ebp)
   117a3:	64                   	fs
   117a4:	72 69                	jb     1180f <LOGDISKBUF_SIZE+0xc0f>
   117a6:	76 65                	jbe    1180d <LOGDISKBUF_SIZE+0xc0d>
   117a8:	72 5f                	jb     11809 <LOGDISKBUF_SIZE+0xc09>
   117aa:	6e                   	outsb  %ds:(%esi),(%dx)
   117ab:	72 20                	jb     117cd <LOGDISKBUF_SIZE+0xbcd>
   117ad:	21 3d 20 49 4e 56    	and    %edi,0x564e4920
   117b3:	41                   	inc    %ecx
   117b4:	4c                   	dec    %esp
   117b5:	49                   	dec    %ecx
   117b6:	44                   	inc    %esp
   117b7:	5f                   	pop    %edi
   117b8:	44                   	inc    %esp
   117b9:	52                   	push   %edx
   117ba:	49                   	dec    %ecx
   117bb:	56                   	push   %esi
   117bc:	45                   	inc    %ebp
   117bd:	52                   	push   %edx
   117be:	00 66 73             	add    %ah,0x73(%esi)
   117c1:	5f                   	pop    %edi
   117c2:	6d                   	insl   (%dx),%es:(%edi)
   117c3:	73 67                	jae    1182c <LOGDISKBUF_SIZE+0xc2c>
   117c5:	2e                   	cs
   117c6:	43                   	inc    %ebx
   117c7:	4e                   	dec    %esi
   117c8:	54                   	push   %esp
   117c9:	20 3d 3d 20 6c 65    	and    %bh,0x656c203d
   117cf:	6e                   	outsb  %ds:(%esi),(%dx)
   117d0:	00 00                	add    %al,(%eax)
   117d2:	00 00                	add    %al,(%eax)
   117d4:	70 69                	jo     1183f <LOGDISKBUF_SIZE+0xc3f>
   117d6:	6e                   	outsb  %ds:(%esi),(%dx)
   117d7:	2d 3e 69 5f 6d       	sub    $0x6d5f693e,%eax
   117dc:	6f                   	outsl  %ds:(%esi),(%dx)
   117dd:	64 65 20 3d 3d 20 49 	fs and %bh,%fs:%gs:0x5f49203d
   117e4:	5f 
   117e5:	52                   	push   %edx
   117e6:	45                   	inc    %ebp
   117e7:	47                   	inc    %edi
   117e8:	55                   	push   %ebp
   117e9:	4c                   	dec    %esp
   117ea:	41                   	inc    %ecx
   117eb:	52                   	push   %edx
   117ec:	20 7c 7c 20          	and    %bh,0x20(%esp,%edi,2)
   117f0:	70 69                	jo     1185b <LOGDISKBUF_SIZE+0xc5b>
   117f2:	6e                   	outsb  %ds:(%esi),(%dx)
   117f3:	2d 3e 69 5f 6d       	sub    $0x6d5f693e,%eax
   117f8:	6f                   	outsl  %ds:(%esi),(%dx)
   117f9:	64 65 20 3d 3d 20 49 	fs and %bh,%fs:%gs:0x5f49203d
   11800:	5f 
   11801:	44                   	inc    %esp
   11802:	49                   	dec    %ecx
   11803:	52                   	push   %edx
   11804:	45                   	inc    %ebp
   11805:	43                   	inc    %ebx
   11806:	54                   	push   %esp
   11807:	4f                   	dec    %edi
   11808:	52                   	push   %edx
   11809:	59                   	pop    %ecx
   1180a:	00 00                	add    %al,(%eax)
   1180c:	28 66 73             	sub    %ah,0x73(%esi)
   1180f:	5f                   	pop    %edi
   11810:	6d                   	insl   (%dx),%es:(%edi)
   11811:	73 67                	jae    1187a <LOGDISKBUF_SIZE+0xc7a>
   11813:	2e 74 79             	je,pn  1188f <LOGDISKBUF_SIZE+0xc8f>
   11816:	70 65                	jo     1187d <LOGDISKBUF_SIZE+0xc7d>
   11818:	20 3d 3d 20 52 45    	and    %bh,0x4552203d
   1181e:	41                   	inc    %ecx
   1181f:	44                   	inc    %esp
   11820:	29 20                	sub    %esp,(%eax)
   11822:	7c 7c                	jl     118a0 <LOGDISKBUF_SIZE+0xca0>
   11824:	20 28                	and    %ch,(%eax)
   11826:	66                   	data16
   11827:	73 5f                	jae    11888 <LOGDISKBUF_SIZE+0xc88>
   11829:	6d                   	insl   (%dx),%es:(%edi)
   1182a:	73 67                	jae    11893 <LOGDISKBUF_SIZE+0xc93>
   1182c:	2e 74 79             	je,pn  118a8 <LOGDISKBUF_SIZE+0xca8>
   1182f:	70 65                	jo     11896 <LOGDISKBUF_SIZE+0xc96>
   11831:	20 3d 3d 20 57 52    	and    %bh,0x5257203d
   11837:	49                   	dec    %ecx
   11838:	54                   	push   %esp
   11839:	45                   	inc    %ebp
   1183a:	29 00                	sub    %eax,(%eax)
   1183c:	6c                   	insb   (%dx),%es:(%edi)
   1183d:	69 6e 6b 2e 63 00 6e 	imul   $0x6e00632e,0x6b(%esi),%ebp
   11844:	61                   	popa   
   11845:	6d                   	insl   (%dx),%es:(%edi)
   11846:	65                   	gs
   11847:	5f                   	pop    %edi
   11848:	6c                   	insb   (%dx),%es:(%edi)
   11849:	65 6e                	outsb  %gs:(%esi),(%dx)
   1184b:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   1184e:	4d                   	dec    %ebp
   1184f:	41                   	inc    %ecx
   11850:	58                   	pop    %eax
   11851:	5f                   	pop    %edi
   11852:	50                   	push   %eax
   11853:	41                   	inc    %ecx
   11854:	54                   	push   %esp
   11855:	48                   	dec    %eax
   11856:	00 2f                	add    %ch,(%edi)
   11858:	00 00                	add    %al,(%eax)
   1185a:	00 00                	add    %al,(%eax)
   1185c:	7b 46                	jnp    118a4 <LOGDISKBUF_SIZE+0xca4>
   1185e:	53                   	push   %ebx
   1185f:	7d 20                	jge    11881 <LOGDISKBUF_SIZE+0xc81>
   11861:	46                   	inc    %esi
   11862:	53                   	push   %ebx
   11863:	3a 64 6f 5f          	cmp    0x5f(%edi,%ebp,2),%ah
   11867:	75 6e                	jne    118d7 <LOGDISKBUF_SIZE+0xcd7>
   11869:	6c                   	insb   (%dx),%es:(%edi)
   1186a:	69 6e 6b 28 29 3a 3a 	imul   $0x3a3a2928,0x6b(%esi),%ebp
   11871:	20 63 61             	and    %ah,0x61(%ebx)
   11874:	6e                   	outsb  %ds:(%esi),(%dx)
   11875:	6e                   	outsb  %ds:(%esi),(%dx)
   11876:	6f                   	outsl  %ds:(%esi),(%dx)
   11877:	74 20                	je     11899 <LOGDISKBUF_SIZE+0xc99>
   11879:	75 6e                	jne    118e9 <LOGDISKBUF_SIZE+0xce9>
   1187b:	6c                   	insb   (%dx),%es:(%edi)
   1187c:	69 6e 6b 20 74 68 65 	imul   $0x65687420,0x6b(%esi),%ebp
   11883:	20 72 6f             	and    %dh,0x6f(%edx)
   11886:	6f                   	outsl  %ds:(%esi),(%dx)
   11887:	74 0a                	je     11893 <LOGDISKBUF_SIZE+0xc93>
   11889:	00 00                	add    %al,(%eax)
   1188b:	00 7b 46             	add    %bh,0x46(%ebx)
   1188e:	53                   	push   %ebx
   1188f:	7d 20                	jge    118b1 <LOGDISKBUF_SIZE+0xcb1>
   11891:	46                   	inc    %esi
   11892:	53                   	push   %ebx
   11893:	3a 3a                	cmp    (%edx),%bh
   11895:	64 6f                	outsl  %fs:(%esi),(%dx)
   11897:	5f                   	pop    %edi
   11898:	75 6e                	jne    11908 <LOGDISKBUF_SIZE+0xd08>
   1189a:	6c                   	insb   (%dx),%es:(%edi)
   1189b:	69 6e 6b 28 29 3a 3a 	imul   $0x3a3a2928,0x6b(%esi),%ebp
   118a2:	20 73 65             	and    %dh,0x65(%ebx)
   118a5:	61                   	popa   
   118a6:	72 63                	jb     1190b <LOGDISKBUF_SIZE+0xd0b>
   118a8:	68 5f 66 69 6c       	push   $0x6c69665f
   118ad:	65 28 29             	sub    %ch,%gs:(%ecx)
   118b0:	20 72 65             	and    %dh,0x65(%edx)
   118b3:	74 75                	je     1192a <LOGDISKBUF_SIZE+0xd2a>
   118b5:	72 6e                	jb     11925 <LOGDISKBUF_SIZE+0xd25>
   118b7:	73 20                	jae    118d9 <LOGDISKBUF_SIZE+0xcd9>
   118b9:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   118c0:	20 69 6e             	and    %ch,0x6e(%ecx)
   118c3:	6f                   	outsl  %ds:(%esi),(%dx)
   118c4:	64 65 3a 20          	fs cmp %fs:%gs:(%eax),%ah
   118c8:	25 73 0a 00 7b       	and    $0x7b000a73,%eax
   118cd:	46                   	inc    %esi
   118ce:	53                   	push   %ebx
   118cf:	7d 20                	jge    118f1 <LOGDISKBUF_SIZE+0xcf1>
   118d1:	63 61 6e             	arpl   %sp,0x6e(%ecx)
   118d4:	6e                   	outsb  %ds:(%esi),(%dx)
   118d5:	6f                   	outsl  %ds:(%esi),(%dx)
   118d6:	74 20                	je     118f8 <LOGDISKBUF_SIZE+0xcf8>
   118d8:	72 65                	jb     1193f <LOGDISKBUF_SIZE+0xd3f>
   118da:	6d                   	insl   (%dx),%es:(%edi)
   118db:	6f                   	outsl  %ds:(%esi),(%dx)
   118dc:	76 65                	jbe    11943 <LOGDISKBUF_SIZE+0xd43>
   118de:	20 66 69             	and    %ah,0x69(%esi)
   118e1:	6c                   	insb   (%dx),%es:(%edi)
   118e2:	65 20 25 73 2c 20 62 	and    %ah,%gs:0x62202c73
   118e9:	65 63 61 75          	arpl   %sp,%gs:0x75(%ecx)
   118ed:	73 65                	jae    11954 <LOGDISKBUF_SIZE+0xd54>
   118ef:	20 69 74             	and    %ch,0x74(%ecx)
   118f2:	20 69 73             	and    %ch,0x73(%ecx)
   118f5:	20 6e 6f             	and    %ch,0x6f(%esi)
   118f8:	74 20                	je     1191a <LOGDISKBUF_SIZE+0xd1a>
   118fa:	61                   	popa   
   118fb:	20 72 65             	and    %dh,0x65(%edx)
   118fe:	67 75 6c             	addr16 jne 1196d <LOGDISKBUF_SIZE+0xd6d>
   11901:	61                   	popa   
   11902:	72 20                	jb     11924 <LOGDISKBUF_SIZE+0xd24>
   11904:	66 69 6c 65 2e 0a 00 	imul   $0xa,0x2e(%ebp,%eiz,2),%bp
   1190b:	00 7b 46             	add    %bh,0x46(%ebx)
   1190e:	53                   	push   %ebx
   1190f:	7d 20                	jge    11931 <LOGDISKBUF_SIZE+0xd31>
   11911:	63 61 6e             	arpl   %sp,0x6e(%ecx)
   11914:	6e                   	outsb  %ds:(%esi),(%dx)
   11915:	6f                   	outsl  %ds:(%esi),(%dx)
   11916:	74 20                	je     11938 <LOGDISKBUF_SIZE+0xd38>
   11918:	72 65                	jb     1197f <LOGDISKBUF_SIZE+0xd7f>
   1191a:	6d                   	insl   (%dx),%es:(%edi)
   1191b:	6f                   	outsl  %ds:(%esi),(%dx)
   1191c:	76 65                	jbe    11983 <LOGDISKBUF_SIZE+0xd83>
   1191e:	20 66 69             	and    %ah,0x69(%esi)
   11921:	6c                   	insb   (%dx),%es:(%edi)
   11922:	65 20 25 73 2c 20 62 	and    %ah,%gs:0x62202c73
   11929:	65 63 61 75          	arpl   %sp,%gs:0x75(%ecx)
   1192d:	73 65                	jae    11994 <LOGDISKBUF_SIZE+0xd94>
   1192f:	20 70 69             	and    %dh,0x69(%eax)
   11932:	6e                   	outsb  %ds:(%esi),(%dx)
   11933:	2d 3e 69 5f 63       	sub    $0x635f693e,%eax
   11938:	6e                   	outsb  %ds:(%esi),(%dx)
   11939:	74 20                	je     1195b <LOGDISKBUF_SIZE+0xd5b>
   1193b:	69 73 20 25 64 2e 0a 	imul   $0xa2e6425,0x20(%ebx),%esi
   11942:	00 62 79             	add    %ah,0x79(%edx)
   11945:	74 65                	je     119ac <LOGDISKBUF_SIZE+0xdac>
   11947:	5f                   	pop    %edi
   11948:	69 64 78 20 3c 20 53 	imul   $0x4553203c,0x20(%eax,%edi,2),%esp
   1194f:	45 
   11950:	43                   	inc    %ebx
   11951:	54                   	push   %esp
   11952:	4f                   	dec    %edi
   11953:	52                   	push   %edx
   11954:	5f                   	pop    %edi
   11955:	53                   	push   %ebx
   11956:	49                   	dec    %ecx
   11957:	5a                   	pop    %edx
   11958:	45                   	inc    %ebp
   11959:	00 00                	add    %al,(%eax)
   1195b:	00 66 73             	add    %ah,0x73(%esi)
   1195e:	62 75 66             	bound  %esi,0x66(%ebp)
   11961:	5b                   	pop    %ebx
   11962:	62 79 74             	bound  %edi,0x74(%ecx)
   11965:	65                   	gs
   11966:	5f                   	pop    %edi
   11967:	69 64 78 20 25 20 53 	imul   $0x45532025,0x20(%eax,%edi,2),%esp
   1196e:	45 
   1196f:	43                   	inc    %ebx
   11970:	54                   	push   %esp
   11971:	4f                   	dec    %edi
   11972:	52                   	push   %edx
   11973:	5f                   	pop    %edi
   11974:	53                   	push   %ebx
   11975:	49                   	dec    %ecx
   11976:	5a                   	pop    %edx
   11977:	45                   	inc    %ebp
   11978:	5d                   	pop    %ebp
   11979:	20 26                	and    %ah,(%esi)
   1197b:	20 28                	and    %ch,(%eax)
   1197d:	31 20                	xor    %esp,(%eax)
   1197f:	3c 3c                	cmp    $0x3c,%al
   11981:	20 62 69             	and    %ah,0x69(%edx)
   11984:	74 5f                	je     119e5 <LOGDISKBUF_SIZE+0xde5>
   11986:	69 64 78 29 00 00 28 	imul   $0x66280000,0x29(%eax,%edi,2),%esp
   1198d:	66 
   1198e:	73 62                	jae    119f2 <LOGDISKBUF_SIZE+0xdf2>
   11990:	75 66                	jne    119f8 <LOGDISKBUF_SIZE+0xdf8>
   11992:	5b                   	pop    %ebx
   11993:	62 79 74             	bound  %edi,0x74(%ecx)
   11996:	65                   	gs
   11997:	5f                   	pop    %edi
   11998:	69 64 78 20 25 20 53 	imul   $0x45532025,0x20(%eax,%edi,2),%esp
   1199f:	45 
   119a0:	43                   	inc    %ebx
   119a1:	54                   	push   %esp
   119a2:	4f                   	dec    %edi
   119a3:	52                   	push   %edx
   119a4:	5f                   	pop    %edi
   119a5:	53                   	push   %ebx
   119a6:	49                   	dec    %ecx
   119a7:	5a                   	pop    %edx
   119a8:	45                   	inc    %ebp
   119a9:	5d                   	pop    %ebp
   119aa:	20 3e                	and    %bh,(%esi)
   119ac:	3e 20 69 20          	and    %ch,%ds:0x20(%ecx)
   119b0:	26 20 31             	and    %dh,%es:(%ecx)
   119b3:	29 20                	sub    %esp,(%eax)
   119b5:	3d 3d 20 31 00       	cmp    $0x31203d,%eax
   119ba:	66                   	data16
   119bb:	73 62                	jae    11a1f <LOGDISKBUF_SIZE+0xe1f>
   119bd:	75 66                	jne    11a25 <LOGDISKBUF_SIZE+0xe25>
   119bf:	5b                   	pop    %ebx
   119c0:	69 5d 20 3d 3d 20 30 	imul   $0x30203d3d,0x20(%ebp),%ebx
   119c7:	78 46                	js     11a0f <LOGDISKBUF_SIZE+0xe0f>
   119c9:	46                   	inc    %esi
   119ca:	00 28                	add    %ch,(%eax)
   119cc:	66                   	data16
   119cd:	73 62                	jae    11a31 <LOGDISKBUF_SIZE+0xe31>
   119cf:	75 66                	jne    11a37 <LOGDISKBUF_SIZE+0xe37>
   119d1:	5b                   	pop    %ebx
   119d2:	69 5d 20 26 20 6d 61 	imul   $0x616d2026,0x20(%ebp),%ebx
   119d9:	73 6b                	jae    11a46 <LOGDISKBUF_SIZE+0xe46>
   119db:	29 20                	sub    %esp,(%eax)
   119dd:	3d 3d 20 6d 61       	cmp    $0x616d203d,%eax
   119e2:	73 6b                	jae    11a4f <LOGDISKBUF_SIZE+0xe4f>
   119e4:	00 66 6c             	add    %ah,0x6c(%esi)
   119e7:	67 00 00             	add    %al,(%bx,%si)
   119ea:	00 00                	add    %al,(%eax)
   119ec:	64 69 73 6b 6c 6f 67 	imul   $0x2e676f6c,%fs:0x6b(%ebx),%esi
   119f3:	2e 
   119f4:	63 00                	arpl   %ax,(%eax)
   119f6:	00 00                	add    %al,(%eax)
   119f8:	28 28                	sub    %ch,(%eax)
   119fa:	6c                   	insb   (%dx),%es:(%edi)
   119fb:	6f                   	outsl  %ds:(%esi),(%dx)
   119fc:	67 64 69 73 6b 62 75 	imul   $0x5b667562,%fs:0x6b(%bp,%di),%esi
   11a03:	66 5b 
   11a05:	62 79 74             	bound  %edi,0x74(%ecx)
   11a08:	65                   	gs
   11a09:	5f                   	pop    %edi
   11a0a:	6f                   	outsl  %ds:(%esi),(%dx)
   11a0b:	66 66 5d             	data32 pop %bp
   11a0e:	20 3e                	and    %bh,(%esi)
   11a10:	3e 20 62 69          	and    %ah,%ds:0x69(%edx)
   11a14:	74 5f                	je     11a75 <LOGDISKBUF_SIZE+0xe75>
   11a16:	6f                   	outsl  %ds:(%esi),(%dx)
   11a17:	66 66 29 20          	data32 sub %sp,(%eax)
   11a1b:	26 20 31             	and    %dh,%es:(%ecx)
   11a1e:	29 20                	sub    %esp,(%eax)
   11a20:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   11a25:	62 69 74             	bound  %ebp,0x74(%ecx)
   11a28:	73 5f                	jae    11a89 <LOGDISKBUF_SIZE+0xe89>
   11a2a:	6c                   	insb   (%dx),%es:(%edi)
   11a2b:	65                   	gs
   11a2c:	66                   	data16
   11a2d:	74 20                	je     11a4f <LOGDISKBUF_SIZE+0xe4f>
   11a2f:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   11a34:	63 68 75             	arpl   %bp,0x75(%eax)
   11a37:	6e                   	outsb  %ds:(%esi),(%dx)
   11a38:	6b 20 3d             	imul   $0x3d,(%eax),%esp
   11a3b:	3d 20 32 35 36       	cmp    $0x36353220,%eax
   11a40:	00 00                	add    %al,(%eax)
   11a42:	00 00                	add    %al,(%eax)
   11a44:	73 65                	jae    11aab <LOGDISKBUF_SIZE+0xeab>
   11a46:	63 74 73 5f          	arpl   %si,0x5f(%ebx,%esi,2)
   11a4a:	6c                   	insb   (%dx),%es:(%edi)
   11a4b:	65                   	gs
   11a4c:	66                   	data16
   11a4d:	74 20                	je     11a6f <LOGDISKBUF_SIZE+0xe6f>
   11a4f:	73 68                	jae    11ab9 <LOGDISKBUF_SIZE+0xeb9>
   11a51:	6f                   	outsl  %ds:(%esi),(%dx)
   11a52:	75 6c                	jne    11ac0 <LOGDISKBUF_SIZE+0xec0>
   11a54:	64 20 62 65          	and    %ah,%fs:0x65(%edx)
   11a58:	20 30                	and    %dh,(%eax)
   11a5a:	2c 20                	sub    $0x20,%al
   11a5c:	63 75 72             	arpl   %si,0x72(%ebp)
   11a5f:	72 65                	jb     11ac6 <LOGDISKBUF_SIZE+0xec6>
   11a61:	6e                   	outsb  %ds:(%esi),(%dx)
   11a62:	74 3a                	je     11a9e <LOGDISKBUF_SIZE+0xe9e>
   11a64:	20 25 64 2e 00 25    	and    %ah,0x25002e64
   11a6a:	38 64 0a 00          	cmp    %ah,0x0(%edx,%ecx,1)
   11a6e:	00 00                	add    %al,(%eax)
   11a70:	3c 25                	cmp    $0x25,%al
   11a72:	64                   	fs
   11a73:	2d 25 30 32 64       	sub    $0x64323025,%eax
   11a78:	2d 25 30 32 64       	sub    $0x64323025,%eax
   11a7d:	20 25 30 32 64 3a    	and    %ah,0x3a643230
   11a83:	25 30 32 64 3a       	and    $0x3a643230,%eax
   11a88:	25 30 32 64 3e       	and    $0x3e643230,%eax
   11a8d:	0a 00                	or     (%eax),%al
   11a8f:	73 74                	jae    11b05 <LOGDISKBUF_SIZE+0xf05>
   11a91:	72 6c                	jb     11aff <LOGDISKBUF_SIZE+0xeff>
   11a93:	65 6e                	outsb  %gs:(%esi),(%dx)
   11a95:	28 74 69 74          	sub    %dh,0x74(%ecx,%ebp,2)
   11a99:	6c                   	insb   (%dx),%es:(%edi)
   11a9a:	65 29 20             	sub    %esp,%gs:(%eax)
   11a9d:	3d 3d 20 69 00       	cmp    $0x69203d,%eax
   11aa2:	64                   	fs
   11aa3:	75 6d                	jne    11b12 <LOGDISKBUF_SIZE+0xf12>
   11aa5:	70 5f                	jo     11b06 <LOGDISKBUF_SIZE+0xf06>
   11aa7:	66                   	data16
   11aa8:	64                   	fs
   11aa9:	5f                   	pop    %edi
   11aaa:	67 72 61             	addr16 jb 11b0e <LOGDISKBUF_SIZE+0xf0e>
   11aad:	70 68                	jo     11b17 <LOGDISKBUF_SIZE+0xf17>
   11aaf:	3a 20                	cmp    (%eax),%ah
   11ab1:	25 73 0a 00 3c       	and    $0x3c000a73,%eax
   11ab6:	7c 00                	jl     11ab8 <LOGDISKBUF_SIZE+0xeb8>
   11ab8:	5f                   	pop    %edi
   11ab9:	5f                   	pop    %edi
   11aba:	4e                   	dec    %esi
   11abb:	4f                   	dec    %edi
   11abc:	54                   	push   %esp
   11abd:	5f                   	pop    %edi
   11abe:	44                   	inc    %esp
   11abf:	45                   	inc    %ebp
   11ac0:	46                   	inc    %esi
   11ac1:	49                   	dec    %ecx
   11ac2:	4e                   	dec    %esi
   11ac3:	45                   	inc    %ebp
   11ac4:	44                   	inc    %esp
   11ac5:	5f                   	pop    %edi
   11ac6:	5f                   	pop    %edi
   11ac7:	00 52 55             	add    %dl,0x55(%edx)
   11aca:	4e                   	dec    %esi
   11acb:	4e                   	dec    %esi
   11acc:	49                   	dec    %ecx
   11acd:	4e                   	dec    %esi
   11ace:	47                   	inc    %edi
   11acf:	00 53 45             	add    %dl,0x45(%ebx)
   11ad2:	4e                   	dec    %esi
   11ad3:	44                   	inc    %esp
   11ad4:	49                   	dec    %ecx
   11ad5:	4e                   	dec    %esi
   11ad6:	47                   	inc    %edi
   11ad7:	00 52 45             	add    %dl,0x45(%edx)
   11ada:	43                   	inc    %ebx
   11adb:	45                   	inc    %ebp
   11adc:	49                   	dec    %ecx
   11add:	56                   	push   %esi
   11ade:	49                   	dec    %ecx
   11adf:	4e                   	dec    %esi
   11ae0:	47                   	inc    %edi
   11ae1:	00 57 41             	add    %dl,0x41(%edi)
   11ae4:	49                   	dec    %ecx
   11ae5:	54                   	push   %esp
   11ae6:	49                   	dec    %ecx
   11ae7:	4e                   	dec    %esi
   11ae8:	47                   	inc    %edi
   11ae9:	00 48 41             	add    %cl,0x41(%eax)
   11aec:	4e                   	dec    %esi
   11aed:	47                   	inc    %edi
   11aee:	49                   	dec    %ecx
   11aef:	4e                   	dec    %esi
   11af0:	47                   	inc    %edi
   11af1:	00 46 52             	add    %al,0x52(%esi)
   11af4:	45                   	inc    %ebp
   11af5:	45                   	inc    %ebp
   11af6:	5f                   	pop    %edi
   11af7:	53                   	push   %ebx
   11af8:	4c                   	dec    %esp
   11af9:	4f                   	dec    %edi
   11afa:	54                   	push   %esp
   11afb:	00 53 45             	add    %dl,0x45(%ebx)
   11afe:	4e                   	dec    %esi
   11aff:	44                   	inc    %esp
   11b00:	49                   	dec    %ecx
   11b01:	4e                   	dec    %esi
   11b02:	47                   	inc    %edi
   11b03:	2c 20                	sub    $0x20,%al
   11b05:	57                   	push   %edi
   11b06:	41                   	inc    %ecx
   11b07:	49                   	dec    %ecx
   11b08:	54                   	push   %esp
   11b09:	49                   	dec    %ecx
   11b0a:	4e                   	dec    %esi
   11b0b:	47                   	inc    %edi
   11b0c:	00 52 45             	add    %dl,0x45(%edx)
   11b0f:	43                   	inc    %ebx
   11b10:	45                   	inc    %ebp
   11b11:	49                   	dec    %ecx
   11b12:	56                   	push   %esi
   11b13:	49                   	dec    %ecx
   11b14:	4e                   	dec    %esi
   11b15:	47                   	inc    %edi
   11b16:	2c 20                	sub    $0x20,%al
   11b18:	57                   	push   %edi
   11b19:	41                   	inc    %ecx
   11b1a:	49                   	dec    %ecx
   11b1b:	54                   	push   %esp
   11b1c:	49                   	dec    %ecx
   11b1d:	4e                   	dec    %esi
   11b1e:	47                   	inc    %edi
   11b1f:	00 52 45             	add    %dl,0x45(%edx)
   11b22:	43                   	inc    %ebx
   11b23:	45                   	inc    %ebp
   11b24:	49                   	dec    %ecx
   11b25:	56                   	push   %esi
   11b26:	49                   	dec    %ecx
   11b27:	4e                   	dec    %esi
   11b28:	47                   	inc    %edi
   11b29:	2c 20                	sub    $0x20,%al
   11b2b:	48                   	dec    %eax
   11b2c:	41                   	inc    %ecx
   11b2d:	4e                   	dec    %esi
   11b2e:	47                   	inc    %edi
   11b2f:	49                   	dec    %ecx
   11b30:	4e                   	dec    %esi
   11b31:	47                   	inc    %edi
   11b32:	00 7c 5f 7c          	add    %bh,0x7c(%edi,%ebx,2)
   11b36:	00 64 69 67          	add    %ah,0x67(%ecx,%ebp,2)
   11b3a:	72 61                	jb     11b9d <LOGDISKBUF_SIZE+0xf9d>
   11b3c:	70 68                	jo     11ba6 <LOGDISKBUF_SIZE+0xfa6>
   11b3e:	20 66 69             	and    %ah,0x69(%esi)
   11b41:	6c                   	insb   (%dx),%es:(%edi)
   11b42:	65                   	gs
   11b43:	64                   	fs
   11b44:	65                   	gs
   11b45:	73 63                	jae    11baa <LOGDISKBUF_SIZE+0xfaa>
   11b47:	25 30 32 64 20       	and    $0x20643230,%eax
   11b4c:	7b 0a                	jnp    11b58 <LOGDISKBUF_SIZE+0xf58>
   11b4e:	00 09                	add    %cl,(%ecx)
   11b50:	67 72 61             	addr16 jb 11bb4 <LOGDISKBUF_SIZE+0xfb4>
   11b53:	70 68                	jo     11bbd <LOGDISKBUF_SIZE+0xfbd>
   11b55:	20 5b 0a             	and    %bl,0xa(%ebx)
   11b58:	00 09                	add    %cl,(%ecx)
   11b5a:	09 72 61             	or     %esi,0x61(%edx)
   11b5d:	6e                   	outsb  %ds:(%esi),(%dx)
   11b5e:	6b 64 69 72 20       	imul   $0x20,0x72(%ecx,%ebp,2),%esp
   11b63:	3d 20 22 4c 52       	cmp    $0x524c2220,%eax
   11b68:	22 0a                	and    (%edx),%cl
   11b6a:	00 09                	add    %cl,(%ecx)
   11b6c:	5d                   	pop    %ebp
   11b6d:	3b 0a                	cmp    (%edx),%ecx
   11b6f:	00 09                	add    %cl,(%ecx)
   11b71:	6e                   	outsb  %ds:(%esi),(%dx)
   11b72:	6f                   	outsl  %ds:(%esi),(%dx)
   11b73:	64 65 20 5b 0a       	fs and %bl,%fs:%gs:0xa(%ebx)
   11b78:	00 09                	add    %cl,(%ecx)
   11b7a:	09 66 6f             	or     %esp,0x6f(%esi)
   11b7d:	6e                   	outsb  %ds:(%esi),(%dx)
   11b7e:	74 73                	je     11bf3 <LOGDISKBUF_SIZE+0xff3>
   11b80:	69 7a 65 20 3d 20 22 	imul   $0x22203d20,0x65(%edx),%edi
   11b87:	31 36                	xor    %esi,(%esi)
   11b89:	22 0a                	and    (%edx),%cl
   11b8b:	00 09                	add    %cl,(%ecx)
   11b8d:	09 73 68             	or     %esi,0x68(%ebx)
   11b90:	61                   	popa   
   11b91:	70 65                	jo     11bf8 <LOGDISKBUF_SIZE+0xff8>
   11b93:	20 3d 20 22 65 6c    	and    %bh,0x6c652220
   11b99:	6c                   	insb   (%dx),%es:(%edi)
   11b9a:	69 70 73 65 22 0a 00 	imul   $0xa2265,0x73(%eax),%esi
   11ba1:	09 65 64             	or     %esp,0x64(%ebp)
   11ba4:	67 65 20 5b 0a       	and    %bl,%gs:0xa(%bp,%di)
   11ba9:	00 0a                	add    %cl,(%edx)
   11bab:	09 73 75             	or     %esi,0x75(%ebx)
   11bae:	62 67 72             	bound  %esp,0x72(%edi)
   11bb1:	61                   	popa   
   11bb2:	70 68                	jo     11c1c <LOGDISKBUF_SIZE+0x101c>
   11bb4:	20 63 6c             	and    %ah,0x6c(%ebx)
   11bb7:	75 73                	jne    11c2c <LOGDISKBUF_SIZE+0x102c>
   11bb9:	74 65                	je     11c20 <LOGDISKBUF_SIZE+0x1020>
   11bbb:	72 5f                	jb     11c1c <LOGDISKBUF_SIZE+0x101c>
   11bbd:	30 20                	xor    %ah,(%eax)
   11bbf:	7b 0a                	jnp    11bcb <LOGDISKBUF_SIZE+0xfcb>
   11bc1:	00 28                	add    %ch,(%eax)
   11bc3:	4e                   	dec    %esi
   11bc4:	4f                   	dec    %edi
   11bc5:	5f                   	pop    %edi
   11bc6:	54                   	push   %esp
   11bc7:	41                   	inc    %ecx
   11bc8:	53                   	push   %ebx
   11bc9:	4b                   	dec    %ebx
   11bca:	29 00                	sub    %eax,(%eax)
   11bcc:	00 00                	add    %al,(%eax)
   11bce:	00 00                	add    %al,(%eax)
   11bd0:	09 09                	or     %ecx,(%ecx)
   11bd2:	22 70 72             	and    0x72(%eax),%dh
   11bd5:	6f                   	outsl  %ds:(%esi),(%dx)
   11bd6:	63 25 64 22 20 5b    	arpl   %sp,0x5b202264
   11bdc:	0a 09                	or     (%ecx),%cl
   11bde:	09 09                	or     %ecx,(%ecx)
   11be0:	6c                   	insb   (%dx),%es:(%edi)
   11be1:	61                   	popa   
   11be2:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11be5:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11beb:	30 3e                	xor    %bh,(%esi)
   11bed:	25 73 20 28 25       	and    $0x25282073,%eax
   11bf2:	64 29 20             	sub    %esp,%fs:(%eax)
   11bf5:	7c 3c                	jl     11c33 <LOGDISKBUF_SIZE+0x1033>
   11bf7:	66 31 3e             	xor    %di,(%esi)
   11bfa:	20 73 74             	and    %dh,0x74(%ebx)
   11bfd:	61                   	popa   
   11bfe:	74 65                	je     11c65 <LOGDISKBUF_SIZE+0x1065>
   11c00:	3a 25 64 28 25 73    	cmp    0x73252864,%ah
   11c06:	29 7c 3c 66          	sub    %edi,0x66(%esp,%edi,1)
   11c0a:	32 3e                	xor    (%esi),%bh
   11c0c:	20 70 5f             	and    %dh,0x5f(%eax)
   11c0f:	70 61                	jo     11c72 <LOGDISKBUF_SIZE+0x1072>
   11c11:	72 65                	jb     11c78 <LOGDISKBUF_SIZE+0x1078>
   11c13:	6e                   	outsb  %ds:(%esi),(%dx)
   11c14:	74 3a                	je     11c50 <LOGDISKBUF_SIZE+0x1050>
   11c16:	25 64 25 73 7c       	and    $0x7c732564,%eax
   11c1b:	3c 66                	cmp    $0x66,%al
   11c1d:	33 3e                	xor    (%esi),%edi
   11c1f:	20 65 69             	and    %ah,0x69(%ebp)
   11c22:	70 3a                	jo     11c5e <LOGDISKBUF_SIZE+0x105e>
   11c24:	30 78 25             	xor    %bh,0x25(%eax)
   11c27:	78 00                	js     11c29 <LOGDISKBUF_SIZE+0x1029>
   11c29:	09 7c 3c 66          	or     %edi,0x66(%esp,%edi,1)
   11c2d:	25 64 3e 20 66       	and    $0x66203e64,%eax
   11c32:	69 6c 70 5b 25 64 5d 	imul   $0x3a5d6425,0x5b(%eax,%esi,2),%ebp
   11c39:	3a 
   11c3a:	20 25 64 00 09 22    	and    %ah,0x22090064
   11c40:	0a 00                	or     (%eax),%al
   11c42:	09 09                	or     %ecx,(%ecx)
   11c44:	09 73 68             	or     %esi,0x68(%ebx)
   11c47:	61                   	popa   
   11c48:	70 65                	jo     11caf <LOGDISKBUF_SIZE+0x10af>
   11c4a:	20 3d 20 22 72 65    	and    %bh,0x65722220
   11c50:	63 6f 72             	arpl   %bp,0x72(%edi)
   11c53:	64 22 0a             	and    %fs:(%edx),%cl
   11c56:	00 09                	add    %cl,(%ecx)
   11c58:	09 5d 3b             	or     %ebx,0x3b(%ebp)
   11c5b:	0a 00                	or     (%eax),%al
   11c5d:	09 09                	or     %ecx,(%ecx)
   11c5f:	22 70 72             	and    0x72(%eax),%dh
   11c62:	6f                   	outsl  %ds:(%esi),(%dx)
   11c63:	63 25 64 22 20 5b    	arpl   %sp,0x5b202264
   11c69:	0a 00                	or     (%eax),%al
   11c6b:	09 09                	or     %ecx,(%ecx)
   11c6d:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11c71:	65                   	gs
   11c72:	6c                   	insb   (%dx),%es:(%edi)
   11c73:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11c79:	30 3e                	xor    %bh,(%esi)
   11c7b:	41                   	inc    %ecx
   11c7c:	4e                   	dec    %esi
   11c7d:	59                   	pop    %ecx
   11c7e:	20 7c 3c 66          	and    %bh,0x66(%esp,%edi,1)
   11c82:	31 3e                	xor    %edi,(%esi)
   11c84:	20 00                	and    %al,(%eax)
   11c86:	09 09                	or     %ecx,(%ecx)
   11c88:	6c                   	insb   (%dx),%es:(%edi)
   11c89:	61                   	popa   
   11c8a:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11c8d:	20 3d 20 22 70 72    	and    %bh,0x72702220
   11c93:	6f                   	outsl  %ds:(%esi),(%dx)
   11c94:	63 73 22             	arpl   %si,0x22(%ebx)
   11c97:	3b 0a                	cmp    (%edx),%ecx
   11c99:	00 09                	add    %cl,(%ecx)
   11c9b:	7d 0a                	jge    11ca7 <LOGDISKBUF_SIZE+0x10a7>
   11c9d:	00 30                	add    %dh,(%eax)
   11c9f:	00 0a                	add    %cl,(%edx)
   11ca1:	09 73 75             	or     %esi,0x75(%ebx)
   11ca4:	62 67 72             	bound  %esp,0x72(%edi)
   11ca7:	61                   	popa   
   11ca8:	70 68                	jo     11d12 <LOGDISKBUF_SIZE+0x1112>
   11caa:	20 63 6c             	and    %ah,0x6c(%ebx)
   11cad:	75 73                	jne    11d22 <LOGDISKBUF_SIZE+0x1122>
   11caf:	74 65                	je     11d16 <LOGDISKBUF_SIZE+0x1116>
   11cb1:	72 5f                	jb     11d12 <LOGDISKBUF_SIZE+0x1112>
   11cb3:	31 20                	xor    %esp,(%eax)
   11cb5:	7b 0a                	jnp    11cc1 <LOGDISKBUF_SIZE+0x10c1>
   11cb7:	00 09                	add    %cl,(%ecx)
   11cb9:	09 22                	or     %esp,(%edx)
   11cbb:	66 69 6c 65 64 65 73 	imul   $0x7365,0x64(%ebp,%eiz,2),%bp
   11cc2:	63 25 64 22 20 5b    	arpl   %sp,0x5b202264
   11cc8:	0a 00                	or     (%eax),%al
   11cca:	00 00                	add    %al,(%eax)
   11ccc:	09 09                	or     %ecx,(%ecx)
   11cce:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11cd2:	65                   	gs
   11cd3:	6c                   	insb   (%dx),%es:(%edi)
   11cd4:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11cda:	30 3e                	xor    %bh,(%esi)
   11cdc:	66 69 6c 65 64 65 73 	imul   $0x7365,0x64(%ebp,%eiz,2),%bp
   11ce3:	63 20                	arpl   %sp,(%eax)
   11ce5:	25 64 7c 3c 66       	and    $0x663c7c64,%eax
   11cea:	31 3e                	xor    %edi,(%esi)
   11cec:	20 66 64             	and    %ah,0x64(%esi)
   11cef:	5f                   	pop    %edi
   11cf0:	6d                   	insl   (%dx),%es:(%edi)
   11cf1:	6f                   	outsl  %ds:(%esi),(%dx)
   11cf2:	64 65 3a 25 64 7c 3c 	fs cmp %fs:%gs:0x663c7c64,%ah
   11cf9:	66 
   11cfa:	32 3e                	xor    (%esi),%bh
   11cfc:	20 66 64             	and    %ah,0x64(%esi)
   11cff:	5f                   	pop    %edi
   11d00:	70 6f                	jo     11d71 <LOGDISKBUF_SIZE+0x1171>
   11d02:	73 3a                	jae    11d3e <LOGDISKBUF_SIZE+0x113e>
   11d04:	25 64 7c 3c 66       	and    $0x663c7c64,%eax
   11d09:	33 3e                	xor    (%esi),%edi
   11d0b:	20 66 64             	and    %ah,0x64(%esi)
   11d0e:	5f                   	pop    %edi
   11d0f:	63 6e 74             	arpl   %bp,0x74(%esi)
   11d12:	3a 25 64 7c 3c 66    	cmp    0x663c7c64,%ah
   11d18:	34 3e                	xor    $0x3e,%al
   11d1a:	20 66 64             	and    %ah,0x64(%esi)
   11d1d:	5f                   	pop    %edi
   11d1e:	69 6e 6f 64 65 3a 25 	imul   $0x253a6564,0x6f(%esi),%ebp
   11d25:	64 00 09             	add    %cl,%fs:(%ecx)
   11d28:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11d2c:	65                   	gs
   11d2d:	6c                   	insb   (%dx),%es:(%edi)
   11d2e:	20 3d 20 22 66 69    	and    %bh,0x69662220
   11d34:	6c                   	insb   (%dx),%es:(%edi)
   11d35:	65                   	gs
   11d36:	64                   	fs
   11d37:	65                   	gs
   11d38:	73 63                	jae    11d9d <LOGDISKBUF_SIZE+0x119d>
   11d3a:	73 22                	jae    11d5e <LOGDISKBUF_SIZE+0x115e>
   11d3c:	3b 0a                	cmp    (%edx),%ecx
   11d3e:	00 31                	add    %dh,(%ecx)
   11d40:	00 0a                	add    %cl,(%edx)
   11d42:	09 73 75             	or     %esi,0x75(%ebx)
   11d45:	62 67 72             	bound  %esp,0x72(%edi)
   11d48:	61                   	popa   
   11d49:	70 68                	jo     11db3 <LOGDISKBUF_SIZE+0x11b3>
   11d4b:	20 63 6c             	and    %ah,0x6c(%ebx)
   11d4e:	75 73                	jne    11dc3 <LOGDISKBUF_SIZE+0x11c3>
   11d50:	74 65                	je     11db7 <LOGDISKBUF_SIZE+0x11b7>
   11d52:	72 5f                	jb     11db3 <LOGDISKBUF_SIZE+0x11b3>
   11d54:	32 20                	xor    (%eax),%ah
   11d56:	7b 0a                	jnp    11d62 <LOGDISKBUF_SIZE+0x1162>
   11d58:	00 09                	add    %cl,(%ecx)
   11d5a:	09 22                	or     %esp,(%edx)
   11d5c:	69 6e 6f 64 65 25 64 	imul   $0x64256564,0x6f(%esi),%ebp
   11d63:	22 20                	and    (%eax),%ah
   11d65:	5b                   	pop    %ebx
   11d66:	0a 00                	or     (%eax),%al
   11d68:	09 09                	or     %ecx,(%ecx)
   11d6a:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11d6e:	65                   	gs
   11d6f:	6c                   	insb   (%dx),%es:(%edi)
   11d70:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11d76:	30 3e                	xor    %bh,(%esi)
   11d78:	69 6e 6f 64 65 20 25 	imul   $0x25206564,0x6f(%esi),%ebp
   11d7f:	64                   	fs
   11d80:	7c 3c                	jl     11dbe <LOGDISKBUF_SIZE+0x11be>
   11d82:	66 31 3e             	xor    %di,(%esi)
   11d85:	20 69 5f             	and    %ch,0x5f(%ecx)
   11d88:	6d                   	insl   (%dx),%es:(%edi)
   11d89:	6f                   	outsl  %ds:(%esi),(%dx)
   11d8a:	64 65 3a 30          	fs cmp %fs:%gs:(%eax),%dh
   11d8e:	78 25                	js     11db5 <LOGDISKBUF_SIZE+0x11b5>
   11d90:	78 7c                	js     11e0e <LOGDISKBUF_SIZE+0x120e>
   11d92:	3c 66                	cmp    $0x66,%al
   11d94:	32 3e                	xor    (%esi),%bh
   11d96:	20 69 5f             	and    %ch,0x5f(%ecx)
   11d99:	73 69                	jae    11e04 <LOGDISKBUF_SIZE+0x1204>
   11d9b:	7a 65                	jp     11e02 <LOGDISKBUF_SIZE+0x1202>
   11d9d:	3a 30                	cmp    (%eax),%dh
   11d9f:	78 25                	js     11dc6 <LOGDISKBUF_SIZE+0x11c6>
   11da1:	78 7c                	js     11e1f <LOGDISKBUF_SIZE+0x121f>
   11da3:	3c 66                	cmp    $0x66,%al
   11da5:	33 3e                	xor    (%esi),%edi
   11da7:	20 69 5f             	and    %ch,0x5f(%ecx)
   11daa:	73 74                	jae    11e20 <LOGDISKBUF_SIZE+0x1220>
   11dac:	61                   	popa   
   11dad:	72 74                	jb     11e23 <LOGDISKBUF_SIZE+0x1223>
   11daf:	5f                   	pop    %edi
   11db0:	73 65                	jae    11e17 <LOGDISKBUF_SIZE+0x1217>
   11db2:	63 74 3a 30          	arpl   %si,0x30(%edx,%edi,1)
   11db6:	78 25                	js     11ddd <LOGDISKBUF_SIZE+0x11dd>
   11db8:	78 7c                	js     11e36 <LOGDISKBUF_SIZE+0x1236>
   11dba:	3c 66                	cmp    $0x66,%al
   11dbc:	34 3e                	xor    $0x3e,%al
   11dbe:	20 69 5f             	and    %ch,0x5f(%ecx)
   11dc1:	6e                   	outsb  %ds:(%esi),(%dx)
   11dc2:	72 5f                	jb     11e23 <LOGDISKBUF_SIZE+0x1223>
   11dc4:	73 65                	jae    11e2b <LOGDISKBUF_SIZE+0x122b>
   11dc6:	63 74 73 3a          	arpl   %si,0x3a(%ebx,%esi,2)
   11dca:	30 78 25             	xor    %bh,0x25(%eax)
   11dcd:	78 7c                	js     11e4b <LOGDISKBUF_SIZE+0x124b>
   11dcf:	3c 66                	cmp    $0x66,%al
   11dd1:	35 3e 20 69 5f       	xor    $0x5f69203e,%eax
   11dd6:	64                   	fs
   11dd7:	65                   	gs
   11dd8:	76 3a                	jbe    11e14 <LOGDISKBUF_SIZE+0x1214>
   11dda:	30 78 25             	xor    %bh,0x25(%eax)
   11ddd:	78 7c                	js     11e5b <LOGDISKBUF_SIZE+0x125b>
   11ddf:	3c 66                	cmp    $0x66,%al
   11de1:	36 3e 20 69 5f       	ss and %ch,%ds:%ss:0x5f(%ecx)
   11de6:	63 6e 74             	arpl   %bp,0x74(%esi)
   11de9:	3a 25 64 7c 3c 66    	cmp    0x663c7c64,%ah
   11def:	37                   	aaa    
   11df0:	3e 20 69 5f          	and    %ch,%ds:0x5f(%ecx)
   11df4:	6e                   	outsb  %ds:(%esi),(%dx)
   11df5:	75 6d                	jne    11e64 <LOGDISKBUF_SIZE+0x1264>
   11df7:	3a 25 64 00 09 09    	cmp    0x9090064,%ah
   11dfd:	6c                   	insb   (%dx),%es:(%edi)
   11dfe:	61                   	popa   
   11dff:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11e02:	20 3d 20 22 69 6e    	and    %bh,0x6e692220
   11e08:	6f                   	outsl  %ds:(%esi),(%dx)
   11e09:	64                   	fs
   11e0a:	65                   	gs
   11e0b:	73 22                	jae    11e2f <LOGDISKBUF_SIZE+0x122f>
   11e0d:	3b 0a                	cmp    (%edx),%ecx
   11e0f:	00 32                	add    %dh,(%edx)
   11e11:	00 0a                	add    %cl,(%edx)
   11e13:	09 73 75             	or     %esi,0x75(%ebx)
   11e16:	62 67 72             	bound  %esp,0x72(%edi)
   11e19:	61                   	popa   
   11e1a:	70 68                	jo     11e84 <LOGDISKBUF_SIZE+0x1284>
   11e1c:	20 63 6c             	and    %ah,0x6c(%ebx)
   11e1f:	75 73                	jne    11e94 <LOGDISKBUF_SIZE+0x1294>
   11e21:	74 65                	je     11e88 <LOGDISKBUF_SIZE+0x1288>
   11e23:	72 5f                	jb     11e84 <LOGDISKBUF_SIZE+0x1284>
   11e25:	33 20                	xor    (%eax),%esp
   11e27:	7b 0a                	jnp    11e33 <LOGDISKBUF_SIZE+0x1233>
   11e29:	00 0a                	add    %cl,(%edx)
   11e2b:	09 09                	or     %ecx,(%ecx)
   11e2d:	73 74                	jae    11ea3 <LOGDISKBUF_SIZE+0x12a3>
   11e2f:	79 6c                	jns    11e9d <LOGDISKBUF_SIZE+0x129d>
   11e31:	65                   	gs
   11e32:	3d 66 69 6c 6c       	cmp    $0x6c6c6966,%eax
   11e37:	65 64 3b 0a          	gs cmp %fs:%gs:(%edx),%ecx
   11e3b:	00 0a                	add    %cl,(%edx)
   11e3d:	09 09                	or     %ecx,(%ecx)
   11e3f:	63 6f 6c             	arpl   %bp,0x6c(%edi)
   11e42:	6f                   	outsl  %ds:(%esi),(%dx)
   11e43:	72 3d                	jb     11e82 <LOGDISKBUF_SIZE+0x1282>
   11e45:	6c                   	insb   (%dx),%es:(%edi)
   11e46:	69 67 68 74 67 72 65 	imul   $0x65726774,0x68(%edi),%esp
   11e4d:	79 3b                	jns    11e8a <LOGDISKBUF_SIZE+0x128a>
   11e4f:	0a 00                	or     (%eax),%al
   11e51:	09 09                	or     %ecx,(%ecx)
   11e53:	22 73 65             	and    0x65(%ebx),%dh
   11e56:	63 74 6f 72          	arpl   %si,0x72(%edi,%ebp,2)
   11e5a:	20 25 78 68 22 20    	and    %ah,0x20226878
   11e60:	5b                   	pop    %ebx
   11e61:	0a 00                	or     (%eax),%al
   11e63:	09 09                	or     %ecx,(%ecx)
   11e65:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11e69:	65                   	gs
   11e6a:	6c                   	insb   (%dx),%es:(%edi)
   11e6b:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11e71:	30 3e                	xor    %bh,(%esi)
   11e73:	73 65                	jae    11eda <LOGDISKBUF_SIZE+0x12da>
   11e75:	63 74 20 25          	arpl   %si,0x25(%eax,%eiz,1)
   11e79:	78 68                	js     11ee3 <LOGDISKBUF_SIZE+0x12e3>
   11e7b:	2d 25 78 68 00       	sub    $0x687825,%eax
   11e80:	09 09                	or     %ecx,(%ecx)
   11e82:	6c                   	insb   (%dx),%es:(%edi)
   11e83:	61                   	popa   
   11e84:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11e87:	20 3d 20 22 73 65    	and    %bh,0x65732220
   11e8d:	63 74 6f 72          	arpl   %si,0x72(%edi,%ebp,2)
   11e91:	20 6d 61             	and    %ch,0x61(%ebp)
   11e94:	70 20                	jo     11eb6 <LOGDISKBUF_SIZE+0x12b6>
   11e96:	28 64 65 76          	sub    %ah,0x76(%ebp,%eiz,2)
   11e9a:	20 73 69             	and    %dh,0x69(%ebx)
   11e9d:	7a 65                	jp     11f04 <LOGDISKBUF_SIZE+0x1304>
   11e9f:	3a 20                	cmp    (%eax),%ah
   11ea1:	25 78 68 29 22       	and    $0x22296878,%eax
   11ea6:	3b 0a                	cmp    (%edx),%ecx
   11ea8:	00 33                	add    %dh,(%ebx)
   11eaa:	00 0a                	add    %cl,(%edx)
   11eac:	09 73 75             	or     %esi,0x75(%ebx)
   11eaf:	62 67 72             	bound  %esp,0x72(%edi)
   11eb2:	61                   	popa   
   11eb3:	70 68                	jo     11f1d <LOGDISKBUF_SIZE+0x131d>
   11eb5:	20 63 6c             	and    %ah,0x6c(%ebx)
   11eb8:	75 73                	jne    11f2d <LOGDISKBUF_SIZE+0x132d>
   11eba:	74 65                	je     11f21 <LOGDISKBUF_SIZE+0x1321>
   11ebc:	72 5f                	jb     11f1d <LOGDISKBUF_SIZE+0x131d>
   11ebe:	34 20                	xor    $0x20,%al
   11ec0:	7b 0a                	jnp    11ecc <LOGDISKBUF_SIZE+0x12cc>
   11ec2:	00 09                	add    %cl,(%ecx)
   11ec4:	09 22                	or     %esp,(%edx)
   11ec6:	69 6d 61 70 22 20 5b 	imul   $0x5b202270,0x61(%ebp),%ebp
   11ecd:	0a 00                	or     (%eax),%al
   11ecf:	09 09                	or     %ecx,(%ecx)
   11ed1:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   11ed5:	65                   	gs
   11ed6:	6c                   	insb   (%dx),%es:(%edi)
   11ed7:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11edd:	30 3e                	xor    %bh,(%esi)
   11edf:	62 69 74             	bound  %ebp,0x74(%ecx)
   11ee2:	73 00                	jae    11ee4 <LOGDISKBUF_SIZE+0x12e4>
   11ee4:	7c 20                	jl     11f06 <LOGDISKBUF_SIZE+0x1306>
   11ee6:	25 78 68 20 00       	and    $0x206878,%eax
   11eeb:	09 09                	or     %ecx,(%ecx)
   11eed:	6c                   	insb   (%dx),%es:(%edi)
   11eee:	61                   	popa   
   11eef:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11ef2:	20 3d 20 22 69 6e    	and    %bh,0x6e692220
   11ef8:	6f                   	outsl  %ds:(%esi),(%dx)
   11ef9:	64 65 20 6d 61       	fs and %ch,%fs:%gs:0x61(%ebp)
   11efe:	70 22                	jo     11f22 <LOGDISKBUF_SIZE+0x1322>
   11f00:	3b 0a                	cmp    (%edx),%ecx
   11f02:	00 34 00             	add    %dh,(%eax,%eax,1)
   11f05:	0a 09                	or     (%ecx),%cl
   11f07:	73 75                	jae    11f7e <LOGDISKBUF_SIZE+0x137e>
   11f09:	62 67 72             	bound  %esp,0x72(%edi)
   11f0c:	61                   	popa   
   11f0d:	70 68                	jo     11f77 <LOGDISKBUF_SIZE+0x1377>
   11f0f:	20 63 6c             	and    %ah,0x6c(%ebx)
   11f12:	75 73                	jne    11f87 <LOGDISKBUF_SIZE+0x1387>
   11f14:	74 65                	je     11f7b <LOGDISKBUF_SIZE+0x137b>
   11f16:	72 5f                	jb     11f77 <LOGDISKBUF_SIZE+0x1377>
   11f18:	35 20 7b 0a 00       	xor    $0xa7b20,%eax
   11f1d:	73 68                	jae    11f87 <LOGDISKBUF_SIZE+0x1387>
   11f1f:	6f                   	outsl  %ds:(%esi),(%dx)
   11f20:	75 6c                	jne    11f8e <LOGDISKBUF_SIZE+0x138e>
   11f22:	64 20 6e 6f          	and    %ch,%fs:0x6f(%esi)
   11f26:	74 20                	je     11f48 <LOGDISKBUF_SIZE+0x1348>
   11f28:	68 61 70 70 65       	push   $0x65707061
   11f2d:	6e                   	outsb  %ds:(%esi),(%dx)
   11f2e:	3a 20                	cmp    (%eax),%ah
   11f30:	25 78 20 3c 20       	and    $0x203c2078,%eax
   11f35:	25 78 2e 00 09       	and    $0x9002e78,%eax
   11f3a:	09 22                	or     %esp,(%edx)
   11f3c:	69 6e 6f 64 65 61 72 	imul   $0x72616564,0x6f(%esi),%ebp
   11f43:	72 61                	jb     11fa6 <LOGDISKBUF_SIZE+0x13a6>
   11f45:	79 25                	jns    11f6c <LOGDISKBUF_SIZE+0x136c>
   11f47:	64 22 20             	and    %fs:(%eax),%ah
   11f4a:	5b                   	pop    %ebx
   11f4b:	0a 00                	or     (%eax),%al
   11f4d:	00 00                	add    %al,(%eax)
   11f4f:	00 09                	add    %cl,(%ecx)
   11f51:	09 09                	or     %ecx,(%ecx)
   11f53:	6c                   	insb   (%dx),%es:(%edi)
   11f54:	61                   	popa   
   11f55:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11f58:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11f5e:	30 3e                	xor    %bh,(%esi)
   11f60:	20 25 64 7c 3c 66    	and    %ah,0x663c7c64
   11f66:	32 3e                	xor    (%esi),%bh
   11f68:	20 69 5f             	and    %ch,0x5f(%ecx)
   11f6b:	73 69                	jae    11fd6 <LOGDISKBUF_SIZE+0x13d6>
   11f6d:	7a 65                	jp     11fd4 <LOGDISKBUF_SIZE+0x13d4>
   11f6f:	3a 30                	cmp    (%eax),%dh
   11f71:	78 25                	js     11f98 <LOGDISKBUF_SIZE+0x1398>
   11f73:	78 7c                	js     11ff1 <LOGDISKBUF_SIZE+0x13f1>
   11f75:	3c 66                	cmp    $0x66,%al
   11f77:	33 3e                	xor    (%esi),%edi
   11f79:	20 73 65             	and    %dh,0x65(%ebx)
   11f7c:	63 74 3a 20          	arpl   %si,0x20(%edx,%edi,1)
   11f80:	25 78 68 2d 25       	and    $0x252d6878,%eax
   11f85:	78 68                	js     11fef <LOGDISKBUF_SIZE+0x13ef>
   11f87:	00 09                	add    %cl,(%ecx)
   11f89:	09 09                	or     %ecx,(%ecx)
   11f8b:	6c                   	insb   (%dx),%es:(%edi)
   11f8c:	61                   	popa   
   11f8d:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11f90:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   11f96:	30 3e                	xor    %bh,(%esi)
   11f98:	20 25 64 7c 3c 66    	and    %ah,0x663c7c64
   11f9e:	32 3e                	xor    (%esi),%bh
   11fa0:	20 69 5f             	and    %ch,0x5f(%ecx)
   11fa3:	73 69                	jae    1200e <LOGDISKBUF_SIZE+0x140e>
   11fa5:	7a 65                	jp     1200c <LOGDISKBUF_SIZE+0x140c>
   11fa7:	3a 30                	cmp    (%eax),%dh
   11fa9:	78 25                	js     11fd0 <LOGDISKBUF_SIZE+0x13d0>
   11fab:	78 7c                	js     12029 <LOGDISKBUF_SIZE+0x1429>
   11fad:	3c 66                	cmp    $0x66,%al
   11faf:	33 3e                	xor    (%esi),%edi
   11fb1:	20 64 65 76          	and    %ah,0x76(%ebp,%eiz,2)
   11fb5:	20 6e 72             	and    %ch,0x72(%esi)
   11fb8:	3a 20                	cmp    (%eax),%ah
   11fba:	28 25 78 68 2c 25    	sub    %ah,0x252c6878
   11fc0:	78 68                	js     1202a <LOGDISKBUF_SIZE+0x142a>
   11fc2:	29 00                	sub    %eax,(%eax)
   11fc4:	09 09                	or     %ecx,(%ecx)
   11fc6:	6c                   	insb   (%dx),%es:(%edi)
   11fc7:	61                   	popa   
   11fc8:	62 65 6c             	bound  %esp,0x6c(%ebp)
   11fcb:	20 3d 20 22 69 6e    	and    %bh,0x6e692220
   11fd1:	6f                   	outsl  %ds:(%esi),(%dx)
   11fd2:	64 65 20 61 72       	fs and %ah,%fs:%gs:0x72(%ecx)
   11fd7:	72 61                	jb     1203a <LOGDISKBUF_SIZE+0x143a>
   11fd9:	79 22                	jns    11ffd <LOGDISKBUF_SIZE+0x13fd>
   11fdb:	3b 0a                	cmp    (%edx),%ecx
   11fdd:	00 35 00 0a 09 73    	add    %dh,0x73090a00
   11fe3:	75 62                	jne    12047 <LOGDISKBUF_SIZE+0x1447>
   11fe5:	67 72 61             	addr16 jb 12049 <LOGDISKBUF_SIZE+0x1449>
   11fe8:	70 68                	jo     12052 <LOGDISKBUF_SIZE+0x1452>
   11fea:	20 63 6c             	and    %ah,0x6c(%ebx)
   11fed:	75 73                	jne    12062 <LOGDISKBUF_SIZE+0x1462>
   11fef:	74 65                	je     12056 <LOGDISKBUF_SIZE+0x1456>
   11ff1:	72 5f                	jb     12052 <LOGDISKBUF_SIZE+0x1452>
   11ff3:	36 20 7b 0a          	and    %bh,%ss:0xa(%ebx)
   11ff7:	00 09                	add    %cl,(%ecx)
   11ff9:	09 22                	or     %esp,(%edx)
   11ffb:	72 6f                	jb     1206c <LOGDISKBUF_SIZE+0x146c>
   11ffd:	6f                   	outsl  %ds:(%esi),(%dx)
   11ffe:	74 64                	je     12064 <LOGDISKBUF_SIZE+0x1464>
   12000:	69 72 65 6e 74 25 64 	imul   $0x6425746e,0x65(%edx),%esi
   12007:	22 20                	and    (%eax),%ah
   12009:	5b                   	pop    %ebx
   1200a:	0a 00                	or     (%eax),%al
   1200c:	09 09                	or     %ecx,(%ecx)
   1200e:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   12012:	65                   	gs
   12013:	6c                   	insb   (%dx),%es:(%edi)
   12014:	20 3d 20 22 3c 66    	and    %bh,0x663c2220
   1201a:	30 3e                	xor    %bh,(%esi)
   1201c:	20 25 64 7c 3c 66    	and    %ah,0x663c7c64
   12022:	32 3e                	xor    (%esi),%bh
   12024:	20 25 73 00 09 22    	and    %ah,0x22090073
   1202a:	69 6e 6f 64 65 61 72 	imul   $0x72616564,0x6f(%esi),%ebp
   12031:	72 61                	jb     12094 <LOGDISKBUF_SIZE+0x1494>
   12033:	79 25                	jns    1205a <LOGDISKBUF_SIZE+0x145a>
   12035:	64 22 3a             	and    %fs:(%edx),%bh
   12038:	66                   	data16
   12039:	30 20                	xor    %ah,(%eax)
   1203b:	2d 3e 20 22 72       	sub    $0x7222203e,%eax
   12040:	6f                   	outsl  %ds:(%esi),(%dx)
   12041:	6f                   	outsl  %ds:(%esi),(%dx)
   12042:	74 64                	je     120a8 <LOGDISKBUF_SIZE+0x14a8>
   12044:	69 72 65 6e 74 25 64 	imul   $0x6425746e,0x65(%edx),%esi
   1204b:	22 3a                	and    (%edx),%bh
   1204d:	66                   	data16
   1204e:	30 3b                	xor    %bh,(%ebx)
   12050:	0a 00                	or     (%eax),%al
   12052:	09 09                	or     %ecx,(%ecx)
   12054:	6c                   	insb   (%dx),%es:(%edi)
   12055:	61                   	popa   
   12056:	62 65 6c             	bound  %esp,0x6c(%ebp)
   12059:	20 3d 20 22 72 6f    	and    %bh,0x6f722220
   1205f:	6f                   	outsl  %ds:(%esi),(%dx)
   12060:	74 20                	je     12082 <LOGDISKBUF_SIZE+0x1482>
   12062:	64 69 72 22 3b 0a 00 	imul   $0x36000a3b,%fs:0x22(%edx),%esi
   12069:	36 
   1206a:	00 00                	add    %al,(%eax)
   1206c:	09 22                	or     %esp,(%edx)
   1206e:	70 72                	jo     120e2 <LOGDISKBUF_SIZE+0x14e2>
   12070:	6f                   	outsl  %ds:(%esi),(%dx)
   12071:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   12077:	30 20                	xor    %ah,(%eax)
   12079:	2d 3e 20 22 70       	sub    $0x7022203e,%eax
   1207e:	72 6f                	jb     120ef <LOGDISKBUF_SIZE+0x14ef>
   12080:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   12086:	30 20                	xor    %ah,(%eax)
   12088:	5b                   	pop    %ebx
   12089:	61                   	popa   
   1208a:	72 72                	jb     120fe <LOGDISKBUF_SIZE+0x14fe>
   1208c:	6f                   	outsl  %ds:(%esi),(%dx)
   1208d:	77 68                	ja     120f7 <LOGDISKBUF_SIZE+0x14f7>
   1208f:	65                   	gs
   12090:	61                   	popa   
   12091:	64                   	fs
   12092:	3d 22 63 72 6f       	cmp    $0x6f726322,%eax
   12097:	77 22                	ja     120bb <LOGDISKBUF_SIZE+0x14bb>
   12099:	2c 20                	sub    $0x20,%al
   1209b:	63 6f 6c             	arpl   %bp,0x6c(%edi)
   1209e:	6f                   	outsl  %ds:(%esi),(%dx)
   1209f:	72 3d                	jb     120de <LOGDISKBUF_SIZE+0x14de>
   120a1:	22 67 72             	and    0x72(%edi),%ah
   120a4:	65 65 6e             	gs outsb %gs:(%esi),(%dx)
   120a7:	22 2c 20             	and    (%eax,%eiz,1),%ch
   120aa:	6c                   	insb   (%dx),%es:(%edi)
   120ab:	61                   	popa   
   120ac:	62 65 6c             	bound  %esp,0x6c(%ebp)
   120af:	3d 22 25 64 22       	cmp    $0x22642522,%eax
   120b4:	5d                   	pop    %ebp
   120b5:	3b 0a                	cmp    (%edx),%ecx
   120b7:	00 09                	add    %cl,(%ecx)
   120b9:	22 70 72             	and    0x72(%eax),%dh
   120bc:	6f                   	outsl  %ds:(%esi),(%dx)
   120bd:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   120c3:	30 20                	xor    %ah,(%eax)
   120c5:	2d 3e 20 22 70       	sub    $0x7022203e,%eax
   120ca:	72 6f                	jb     1213b <LOGDISKBUF_SIZE+0x153b>
   120cc:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   120d2:	30 20                	xor    %ah,(%eax)
   120d4:	5b                   	pop    %ebx
   120d5:	61                   	popa   
   120d6:	72 72                	jb     1214a <LOGDISKBUF_SIZE+0x154a>
   120d8:	6f                   	outsl  %ds:(%esi),(%dx)
   120d9:	77 68                	ja     12143 <LOGDISKBUF_SIZE+0x1543>
   120db:	65                   	gs
   120dc:	61                   	popa   
   120dd:	64                   	fs
   120de:	3d 22 76 65 65       	cmp    $0x65657622,%eax
   120e3:	22 2c 20             	and    (%eax,%eiz,1),%ch
   120e6:	63 6f 6c             	arpl   %bp,0x6c(%edi)
   120e9:	6f                   	outsl  %ds:(%esi),(%dx)
   120ea:	72 3d                	jb     12129 <LOGDISKBUF_SIZE+0x1529>
   120ec:	22 62 6c             	and    0x6c(%edx),%ah
   120ef:	75 65                	jne    12156 <LOGDISKBUF_SIZE+0x1556>
   120f1:	22 2c 20             	and    (%eax,%eiz,1),%ch
   120f4:	6c                   	insb   (%dx),%es:(%edi)
   120f5:	61                   	popa   
   120f6:	62 65 6c             	bound  %esp,0x6c(%ebp)
   120f9:	3d 22 25 64 22       	cmp    $0x22642522,%eax
   120fe:	5d                   	pop    %ebp
   120ff:	3b 0a                	cmp    (%edx),%ecx
   12101:	00 00                	add    %al,(%eax)
   12103:	00 09                	add    %cl,(%ecx)
   12105:	22 70 72             	and    0x72(%eax),%dh
   12108:	6f                   	outsl  %ds:(%esi),(%dx)
   12109:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   1210f:	30 20                	xor    %ah,(%eax)
   12111:	2d 3e 20 22 70       	sub    $0x7022203e,%eax
   12116:	72 6f                	jb     12187 <LOGDISKBUF_SIZE+0x1587>
   12118:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   1211e:	30 20                	xor    %ah,(%eax)
   12120:	5b                   	pop    %ebx
   12121:	61                   	popa   
   12122:	72 72                	jb     12196 <LOGDISKBUF_SIZE+0x1596>
   12124:	6f                   	outsl  %ds:(%esi),(%dx)
   12125:	77 68                	ja     1218f <LOGDISKBUF_SIZE+0x158f>
   12127:	65                   	gs
   12128:	61                   	popa   
   12129:	64                   	fs
   1212a:	3d 22 64 6f 74       	cmp    $0x746f6422,%eax
   1212f:	22 2c 20             	and    (%eax,%eiz,1),%ch
   12132:	63 6f 6c             	arpl   %bp,0x6c(%edi)
   12135:	6f                   	outsl  %ds:(%esi),(%dx)
   12136:	72 3d                	jb     12175 <LOGDISKBUF_SIZE+0x1575>
   12138:	22 69 76             	and    0x76(%ecx),%ch
   1213b:	6f                   	outsl  %ds:(%esi),(%dx)
   1213c:	72 79                	jb     121b7 <LOGDISKBUF_SIZE+0x15b7>
   1213e:	33 22                	xor    (%edx),%esp
   12140:	5d                   	pop    %ebp
   12141:	3b 0a                	cmp    (%edx),%ecx
   12143:	00 09                	add    %cl,(%ecx)
   12145:	22 70 72             	and    0x72(%eax),%dh
   12148:	6f                   	outsl  %ds:(%esi),(%dx)
   12149:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   1214f:	25 64 20 2d 3e       	and    $0x3e2d2064,%eax
   12154:	20 22                	and    %ah,(%edx)
   12156:	66 69 6c 65 64 65 73 	imul   $0x7365,0x64(%ebp,%eiz,2),%bp
   1215d:	63 25 64 22 3a 66    	arpl   %sp,0x663a2264
   12163:	33 3b                	xor    (%ebx),%edi
   12165:	0a 00                	or     (%eax),%al
   12167:	00 09                	add    %cl,(%ecx)
   12169:	22 66 69             	and    0x69(%esi),%ah
   1216c:	6c                   	insb   (%dx),%es:(%edi)
   1216d:	65                   	gs
   1216e:	64                   	fs
   1216f:	65                   	gs
   12170:	73 63                	jae    121d5 <LOGDISKBUF_SIZE+0x15d5>
   12172:	25 64 22 3a 66       	and    $0x663a2264,%eax
   12177:	34 20                	xor    $0x20,%al
   12179:	2d 3e 20 22 69       	sub    $0x6922203e,%eax
   1217e:	6e                   	outsb  %ds:(%esi),(%dx)
   1217f:	6f                   	outsl  %ds:(%esi),(%dx)
   12180:	64                   	fs
   12181:	65                   	gs
   12182:	25 64 22 3a 66       	and    $0x663a2264,%eax
   12187:	36 3b 0a             	cmp    %ss:(%edx),%ecx
   1218a:	00 00                	add    %al,(%eax)
   1218c:	09 22                	or     %esp,(%edx)
   1218e:	69 6e 6f 64 65 25 64 	imul   $0x64256564,0x6f(%esi),%ebp
   12195:	22 3a                	and    (%edx),%bh
   12197:	66                   	data16
   12198:	37                   	aaa    
   12199:	20 2d 3e 20 22 69    	and    %ch,0x6922203e
   1219f:	6e                   	outsb  %ds:(%esi),(%dx)
   121a0:	6f                   	outsl  %ds:(%esi),(%dx)
   121a1:	64                   	fs
   121a2:	65                   	gs
   121a3:	61                   	popa   
   121a4:	72 72                	jb     12218 <LOGDISKBUF_SIZE+0x1618>
   121a6:	61                   	popa   
   121a7:	79 25                	jns    121ce <LOGDISKBUF_SIZE+0x15ce>
   121a9:	64 22 3a             	and    %fs:(%edx),%bh
   121ac:	66                   	data16
   121ad:	30 3b                	xor    %bh,(%ebx)
   121af:	0a 00                	or     (%eax),%al
   121b1:	09 6c 61 62          	or     %ebp,0x62(%ecx,%eiz,2)
   121b5:	65                   	gs
   121b6:	6c                   	insb   (%dx),%es:(%edi)
   121b7:	20 3d 20 22 25 73    	and    %bh,0x73252220
   121bd:	22 3b                	and    (%ebx),%bh
   121bf:	0a 00                	or     (%eax),%al
   121c1:	7d 0a                	jge    121cd <LOGDISKBUF_SIZE+0x15cd>
   121c3:	00 2d 2d 73 65 70    	add    %ch,0x7065732d
   121c9:	61                   	popa   
   121ca:	72 61                	jb     1222d <LOGDISKBUF_SIZE+0x162d>
   121cc:	74 6f                	je     1223d <LOGDISKBUF_SIZE+0x163d>
   121ce:	72 2d                	jb     121fd <LOGDISKBUF_SIZE+0x15fd>
   121d0:	2d 0a 00 6c 6f       	sub    $0x6f6c000a,%eax
   121d5:	67 62 75 66          	bound  %esi,0x66(%di)
   121d9:	70 6f                	jo     1224a <LOGDISKBUF_SIZE+0x164a>
   121db:	73 20                	jae    121fd <LOGDISKBUF_SIZE+0x15fd>
   121dd:	3c 20                	cmp    $0x20,%al
   121df:	4c                   	dec    %esp
   121e0:	4f                   	dec    %edi
   121e1:	47                   	inc    %edi
   121e2:	42                   	inc    %edx
   121e3:	55                   	push   %ebp
   121e4:	46                   	inc    %esi
   121e5:	5f                   	pop    %edi
   121e6:	53                   	push   %ebx
   121e7:	49                   	dec    %ecx
   121e8:	5a                   	pop    %edx
   121e9:	45                   	inc    %ebp
   121ea:	00 7c 3e 00          	add    %bh,0x0(%esi,%edi,1)
   121ee:	00 00                	add    %al,(%eax)
   121f0:	25 64 20 62 75       	and    $0x75622064,%eax
   121f5:	66                   	data16
   121f6:	66                   	data16
   121f7:	65                   	gs
   121f8:	72 73                	jb     1226d <LOGDISKBUF_SIZE+0x166d>
   121fa:	2c 20                	sub    $0x20,%al
   121fc:	73 70                	jae    1226e <LOGDISKBUF_SIZE+0x166e>
   121fe:	61                   	popa   
   121ff:	63 65 20             	arpl   %sp,0x20(%ebp)
   12202:	3d 20 25 64 20       	cmp    $0x20642520,%eax
   12207:	62 79 74             	bound  %edi,0x74(%ecx)
   1220a:	65                   	gs
   1220b:	73 28                	jae    12235 <LOGDISKBUF_SIZE+0x1635>
   1220d:	25 64 20 6b 42       	and    $0x426b2064,%eax
   12212:	29 2c 20             	sub    %ebp,(%eax,%eiz,1)
   12215:	73 74                	jae    1228b <LOGDISKBUF_SIZE+0x168b>
   12217:	61                   	popa   
   12218:	72 74                	jb     1228e <LOGDISKBUF_SIZE+0x168e>
   1221a:	20 61 74             	and    %ah,0x74(%ecx)
   1221d:	20 30                	and    %dh,(%eax)
   1221f:	78 25                	js     12246 <LOGDISKBUF_SIZE+0x1646>
   12221:	78 0a                	js     1222d <LOGDISKBUF_SIZE+0x162d>
   12223:	00 73 69             	add    %dh,0x69(%ebx)
   12226:	7a 65                	jp     1228d <LOGDISKBUF_SIZE+0x168d>
   12228:	20 6f 66             	and    %ch,0x66(%edi)
   1222b:	20 62 75             	and    %ah,0x75(%edx)
   1222e:	66                   	data16
   1222f:	66                   	data16
   12230:	65                   	gs
   12231:	72 20                	jb     12253 <LOGDISKBUF_SIZE+0x1653>
   12233:	68 65 61 64 73       	push   $0x73646165
   12238:	20 3d 20 25 64 20    	and    %bh,0x20642520
   1223e:	62 79 74             	bound  %edi,0x74(%ecx)
   12241:	65                   	gs
   12242:	73 28                	jae    1226c <LOGDISKBUF_SIZE+0x166c>
   12244:	25 64 20 6b 42       	and    $0x426b2064,%eax
   12249:	29 0a                	sub    %ecx,(%edx)
   1224b:	00 4e 6f             	add    %cl,0x6f(%esi)
   1224e:	20 72 6f             	and    %dh,0x6f(%edx)
   12251:	6f                   	outsl  %ds:(%esi),(%dx)
   12252:	74 20                	je     12274 <LOGDISKBUF_SIZE+0x1674>
   12254:	69 6e 6f 64 65 00 4e 	imul   $0x4e006564,0x6f(%esi),%ebp
   1225b:	6f                   	outsl  %ds:(%esi),(%dx)
   1225c:	20 70 77             	and    %dh,0x77(%eax)
   1225f:	64 20 69 6e          	and    %ch,%fs:0x6e(%ecx)
   12263:	6f                   	outsl  %ds:(%esi),(%dx)
   12264:	64 65 00 64 69 72    	fs add %ah,%fs:%gs:0x72(%ecx,%ebp,2)
   1226a:	20 3a                	and    %bh,(%edx)
   1226c:	25 73 0a 00 66       	and    $0x66000a73,%eax
   12271:	69 6c 65 3a 25 73 0a 	imul   $0xa7325,0x3a(%ebp,%eiz,2),%ebp
   12278:	00 
   12279:	69 6e 72 20 3a 25 64 	imul   $0x64253a20,0x72(%esi),%ebp
   12280:	0a 00                	or     (%eax),%al
   12282:	00 00                	add    %al,(%eax)
   12284:	4d                   	dec    %ebp
   12285:	4d                   	dec    %ebp
   12286:	3a 3a                	cmp    (%edx),%bh
   12288:	75 6e                	jne    122f8 <LOGDISKBUF_SIZE+0x16f8>
   1228a:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   1228e:	6e                   	outsb  %ds:(%esi),(%dx)
   1228f:	20 6d 73             	and    %ch,0x73(%ebp)
   12292:	67 00 6d 61          	add    %ch,0x61(%di)
   12296:	69 6e 2e 63 00 30 00 	imul   $0x300063,0x2e(%esi),%ebp
   1229d:	00 00                	add    %al,(%eax)
   1229f:	00 e1                	add    %ah,%cl
   122a1:	b4 00                	mov    $0x0,%ah
   122a3:	00 f0                	add    %dh,%al
   122a5:	b4 00                	mov    $0x0,%ah
   122a7:	00 01                	add    %al,(%ecx)
   122a9:	b5 00                	mov    $0x0,%ch
   122ab:	00 2e                	add    %ch,(%esi)
   122ad:	b5 00                	mov    $0x0,%ch
   122af:	00 1f                	add    %bl,(%edi)
   122b1:	b5 00                	mov    $0x0,%ch
   122b3:	00 4c b5 00          	add    %cl,0x0(%ebp,%esi,4)
   122b7:	00 3d b5 00 00 67    	add    %bh,0x670000b5
   122bd:	b5 00                	mov    $0x0,%ch
   122bf:	00 5b b5             	add    %bl,-0x4b(%ebx)
   122c2:	00 00                	add    %al,(%eax)
   122c4:	73 b5                	jae    1227b <LOGDISKBUF_SIZE+0x167b>
   122c6:	00 00                	add    %al,(%eax)
   122c8:	7f b5                	jg     1227f <LOGDISKBUF_SIZE+0x167f>
   122ca:	00 00                	add    %al,(%eax)
   122cc:	97                   	xchg   %eax,%edi
   122cd:	b5 00                	mov    $0x0,%ch
   122cf:	00 10                	add    %dl,(%eax)
   122d1:	b5 00                	mov    $0x0,%ch
   122d3:	00 8b b5 00 00 b9    	add    %cl,-0x46ffff4b(%ebx)
   122d9:	b4 00                	mov    $0x0,%ah
   122db:	00 c8                	add    %cl,%al
   122dd:	b4 00                	mov    $0x0,%ah
   122df:	00 4d 65             	add    %cl,0x65(%ebp)
   122e2:	6d                   	insl   (%dx),%es:(%edi)
   122e3:	6f                   	outsl  %ds:(%esi),(%dx)
   122e4:	72 79                	jb     1235f <LOGDISKBUF_SIZE+0x175f>
   122e6:	3a 25 64 4d 42 0a    	cmp    0xa424d64,%ah
   122ec:	00 00                	add    %al,(%eax)
   122ee:	00 00                	add    %al,(%eax)
   122f0:	4b                   	dec    %ebx
   122f1:	65                   	gs
   122f2:	72 6e                	jb     12362 <LOGDISKBUF_SIZE+0x1762>
   122f4:	65                   	gs
   122f5:	6c                   	insb   (%dx),%es:(%edi)
   122f6:	20 6d 65             	and    %ch,0x65(%ebp)
   122f9:	6d                   	insl   (%dx),%es:(%edi)
   122fa:	6f                   	outsl  %ds:(%esi),(%dx)
   122fb:	72 79                	jb     12376 <LOGDISKBUF_SIZE+0x1776>
   122fd:	3a 20                	cmp    (%eax),%ah
   122ff:	30 78 25             	xor    %bh,0x25(%eax)
   12302:	78 20                	js     12324 <LOGDISKBUF_SIZE+0x1724>
   12304:	2d 20 30 78 25       	sub    $0x25783020,%eax
   12309:	78 28                	js     12333 <LOGDISKBUF_SIZE+0x1733>
   1230b:	25 64 6b 42 29       	and    $0x29426b64,%eax
   12310:	0a 00                	or     (%eax),%al
   12312:	46                   	inc    %esi
   12313:	72 65                	jb     1237a <LOGDISKBUF_SIZE+0x177a>
   12315:	65 20 6d 65          	and    %ch,%gs:0x65(%ebp)
   12319:	6d                   	insl   (%dx),%es:(%edi)
   1231a:	6f                   	outsl  %ds:(%esi),(%dx)
   1231b:	72 79                	jb     12396 <LOGDISKBUF_SIZE+0x1796>
   1231d:	3a 25 64 4d 42 0a    	cmp    0xa424d64,%ah
   12323:	00 70 69             	add    %dh,0x69(%eax)
   12326:	64 20 3e             	and    %bh,%fs:(%esi)
   12329:	3d 20 28 4e 52       	cmp    $0x524e2820,%eax
   1232e:	5f                   	pop    %edi
   1232f:	54                   	push   %esp
   12330:	41                   	inc    %ecx
   12331:	53                   	push   %ebx
   12332:	4b                   	dec    %ebx
   12333:	53                   	push   %ebx
   12334:	20 2b                	and    %ch,(%ebx)
   12336:	20 4e 52             	and    %cl,0x52(%esi)
   12339:	5f                   	pop    %edi
   1233a:	4e                   	dec    %esi
   1233b:	41                   	inc    %ecx
   1233c:	54                   	push   %esp
   1233d:	49                   	dec    %ecx
   1233e:	56                   	push   %esi
   1233f:	45                   	inc    %ebp
   12340:	5f                   	pop    %edi
   12341:	50                   	push   %eax
   12342:	52                   	push   %edx
   12343:	4f                   	dec    %edi
   12344:	43                   	inc    %ebx
   12345:	53                   	push   %ebx
   12346:	29 00                	sub    %eax,(%eax)
   12348:	75 6e                	jne    123b8 <LOGDISKBUF_SIZE+0x17b8>
   1234a:	73 75                	jae    123c1 <LOGDISKBUF_SIZE+0x17c1>
   1234c:	70 70                	jo     123be <LOGDISKBUF_SIZE+0x17be>
   1234e:	6f                   	outsl  %ds:(%esi),(%dx)
   1234f:	72 74                	jb     123c5 <LOGDISKBUF_SIZE+0x17c5>
   12351:	65 64 20 6d 65       	gs and %ch,%fs:%gs:0x65(%ebp)
   12356:	6d                   	insl   (%dx),%es:(%edi)
   12357:	6f                   	outsl  %ds:(%esi),(%dx)
   12358:	72 79                	jb     123d3 <LOGDISKBUF_SIZE+0x17d3>
   1235a:	20 72 65             	and    %dh,0x65(%edx)
   1235d:	71 75                	jno    123d4 <LOGDISKBUF_SIZE+0x17d4>
   1235f:	65                   	gs
   12360:	73 74                	jae    123d6 <LOGDISKBUF_SIZE+0x17d6>
   12362:	3a 20                	cmp    (%eax),%ah
   12364:	25 64 2e 20 28       	and    $0x28202e64,%eax
   12369:	73 68                	jae    123d3 <LOGDISKBUF_SIZE+0x17d3>
   1236b:	6f                   	outsl  %ds:(%esi),(%dx)
   1236c:	75 6c                	jne    123da <LOGDISKBUF_SIZE+0x17da>
   1236e:	64 20 62 65          	and    %ah,%fs:0x65(%edx)
   12372:	20 6c 65 73          	and    %ch,0x73(%ebp,%eiz,2)
   12376:	73 20                	jae    12398 <LOGDISKBUF_SIZE+0x1798>
   12378:	74 68                	je     123e2 <LOGDISKBUF_SIZE+0x17e2>
   1237a:	61                   	popa   
   1237b:	6e                   	outsb  %ds:(%esi),(%dx)
   1237c:	20 25 64 29 00 00    	and    %ah,0x2964
   12382:	00 00                	add    %al,(%eax)
   12384:	6d                   	insl   (%dx),%es:(%edi)
   12385:	65                   	gs
   12386:	6d                   	insl   (%dx),%es:(%edi)
   12387:	6f                   	outsl  %ds:(%esi),(%dx)
   12388:	72 79                	jb     12403 <LOGDISKBUF_SIZE+0x1803>
   1238a:	20 61 6c             	and    %ah,0x6c(%ecx)
   1238d:	6c                   	insb   (%dx),%es:(%edi)
   1238e:	6f                   	outsl  %ds:(%esi),(%dx)
   1238f:	63 61 74             	arpl   %sp,0x74(%ecx)
   12392:	69 6f 6e 20 66 61 69 	imul   $0x69616620,0x6e(%edi),%ebp
   12399:	6c                   	insb   (%dx),%es:(%edi)
   1239a:	65 64 2e 20 70 69    	gs fs and %dh,%cs:%fs:%gs:0x69(%eax)
   123a0:	64 3a 25 64 00 00 00 	cmp    %fs:0x64,%ah
   123a7:	00 66 6f             	add    %ah,0x6f(%esi)
   123aa:	72 6b                	jb     12417 <LOGDISKBUF_SIZE+0x1817>
   123ac:	65                   	gs
   123ad:	78 69                	js     12418 <LOGDISKBUF_SIZE+0x1818>
   123af:	74 2e                	je     123df <LOGDISKBUF_SIZE+0x17df>
   123b1:	63 00                	arpl   %ax,(%eax)
   123b3:	70 20                	jo     123d5 <LOGDISKBUF_SIZE+0x17d5>
   123b5:	3d 3d 20 26 70       	cmp    $0x7026203d,%eax
   123ba:	72 6f                	jb     1242b <LOGDISKBUF_SIZE+0x182b>
   123bc:	63 5f 74             	arpl   %bx,0x74(%edi)
   123bf:	61                   	popa   
   123c0:	62 6c 65 5b          	bound  %ebp,0x5b(%ebp,%eiz,2)
   123c4:	63 68 69             	arpl   %bp,0x69(%eax)
   123c7:	6c                   	insb   (%dx),%es:(%edi)
   123c8:	64                   	fs
   123c9:	5f                   	pop    %edi
   123ca:	70 69                	jo     12435 <LOGDISKBUF_SIZE+0x1835>
   123cc:	64                   	fs
   123cd:	5d                   	pop    %ebp
   123ce:	00 00                	add    %al,(%eax)
   123d0:	63 68 69             	arpl   %bp,0x69(%eax)
   123d3:	6c                   	insb   (%dx),%es:(%edi)
   123d4:	64                   	fs
   123d5:	5f                   	pop    %edi
   123d6:	70 69                	jo     12441 <LOGDISKBUF_SIZE+0x1841>
   123d8:	64 20 3e             	and    %bh,%fs:(%esi)
   123db:	3d 20 4e 52 5f       	cmp    $0x5f524e20,%eax
   123e0:	54                   	push   %esp
   123e1:	41                   	inc    %ecx
   123e2:	53                   	push   %ebx
   123e3:	4b                   	dec    %ebx
   123e4:	53                   	push   %ebx
   123e5:	20 2b                	and    %ch,(%ebx)
   123e7:	20 4e 52             	and    %cl,0x52(%esi)
   123ea:	5f                   	pop    %edi
   123eb:	4e                   	dec    %esi
   123ec:	41                   	inc    %ecx
   123ed:	54                   	push   %esp
   123ee:	49                   	dec    %ecx
   123ef:	56                   	push   %esi
   123f0:	45                   	inc    %ebp
   123f1:	5f                   	pop    %edi
   123f2:	50                   	push   %eax
   123f3:	52                   	push   %edx
   123f4:	4f                   	dec    %edi
   123f5:	43                   	inc    %ebx
   123f6:	53                   	push   %ebx
   123f7:	00 69 20             	add    %ch,0x20(%ecx)
   123fa:	3c 20                	cmp    $0x20,%al
   123fc:	4e                   	dec    %esi
   123fd:	52                   	push   %edx
   123fe:	5f                   	pop    %edi
   123ff:	54                   	push   %esp
   12400:	41                   	inc    %ecx
   12401:	53                   	push   %ebx
   12402:	4b                   	dec    %ebx
   12403:	53                   	push   %ebx
   12404:	20 2b                	and    %ch,(%ebx)
   12406:	20 4e 52             	and    %cl,0x52(%esi)
   12409:	5f                   	pop    %edi
   1240a:	50                   	push   %eax
   1240b:	52                   	push   %edx
   1240c:	4f                   	dec    %edi
   1240d:	43                   	inc    %ebx
   1240e:	53                   	push   %ebx
   1240f:	00 25 73 5f 25 64    	add    %ah,0x64255f73
   12415:	00 00                	add    %al,(%eax)
   12417:	00 28                	add    %ch,(%eax)
   12419:	63 61 6c             	arpl   %sp,0x6c(%ecx)
   1241c:	6c                   	insb   (%dx),%es:(%edi)
   1241d:	65                   	gs
   1241e:	72 5f                	jb     1247f <LOGDISKBUF_SIZE+0x187f>
   12420:	54                   	push   %esp
   12421:	5f                   	pop    %edi
   12422:	62 61 73             	bound  %esp,0x73(%ecx)
   12425:	65 20 3d 3d 20 63 61 	and    %bh,%gs:0x6163203d
   1242c:	6c                   	insb   (%dx),%es:(%edi)
   1242d:	6c                   	insb   (%dx),%es:(%edi)
   1242e:	65                   	gs
   1242f:	72 5f                	jb     12490 <LOGDISKBUF_SIZE+0x1890>
   12431:	44                   	inc    %esp
   12432:	5f                   	pop    %edi
   12433:	53                   	push   %ebx
   12434:	5f                   	pop    %edi
   12435:	62 61 73             	bound  %esp,0x73(%ecx)
   12438:	65 20 29             	and    %ch,%gs:(%ecx)
   1243b:	20 26                	and    %ah,(%esi)
   1243d:	26 20 28             	and    %ch,%es:(%eax)
   12440:	63 61 6c             	arpl   %sp,0x6c(%ecx)
   12443:	6c                   	insb   (%dx),%es:(%edi)
   12444:	65                   	gs
   12445:	72 5f                	jb     124a6 <LOGDISKBUF_SIZE+0x18a6>
   12447:	54                   	push   %esp
   12448:	5f                   	pop    %edi
   12449:	6c                   	insb   (%dx),%es:(%edi)
   1244a:	69 6d 69 74 20 3d 3d 	imul   $0x3d3d2074,0x69(%ebp),%ebp
   12451:	20 63 61             	and    %ah,0x61(%ebx)
   12454:	6c                   	insb   (%dx),%es:(%edi)
   12455:	6c                   	insb   (%dx),%es:(%edi)
   12456:	65                   	gs
   12457:	72 5f                	jb     124b8 <LOGDISKBUF_SIZE+0x18b8>
   12459:	44                   	inc    %esp
   1245a:	5f                   	pop    %edi
   1245b:	53                   	push   %ebx
   1245c:	5f                   	pop    %edi
   1245d:	6c                   	insb   (%dx),%es:(%edi)
   1245e:	69 6d 69 74 29 20 26 	imul   $0x26202974,0x69(%ebp),%ebp
   12465:	26 20 28             	and    %ch,%es:(%eax)
   12468:	63 61 6c             	arpl   %sp,0x6c(%ecx)
   1246b:	6c                   	insb   (%dx),%es:(%edi)
   1246c:	65                   	gs
   1246d:	72 5f                	jb     124ce <LOGDISKBUF_SIZE+0x18ce>
   1246f:	54                   	push   %esp
   12470:	5f                   	pop    %edi
   12471:	73 69                	jae    124dc <LOGDISKBUF_SIZE+0x18dc>
   12473:	7a 65                	jp     124da <LOGDISKBUF_SIZE+0x18da>
   12475:	20 3d 3d 20 63 61    	and    %bh,0x6163203d
   1247b:	6c                   	insb   (%dx),%es:(%edi)
   1247c:	6c                   	insb   (%dx),%es:(%edi)
   1247d:	65                   	gs
   1247e:	72 5f                	jb     124df <LOGDISKBUF_SIZE+0x18df>
   12480:	44                   	inc    %esp
   12481:	5f                   	pop    %edi
   12482:	53                   	push   %ebx
   12483:	5f                   	pop    %edi
   12484:	73 69                	jae    124ef <LOGDISKBUF_SIZE+0x18ef>
   12486:	7a 65                	jp     124ed <LOGDISKBUF_SIZE+0x18ed>
   12488:	20 29                	and    %ch,(%ecx)
   1248a:	00 00                	add    %al,(%eax)
   1248c:	65                   	gs
   1248d:	78 65                	js     124f4 <LOGDISKBUF_SIZE+0x18f4>
   1248f:	63 2e                	arpl   %bp,(%esi)
   12491:	63 00                	arpl   %ax,(%eax)
   12493:	6e                   	outsb  %ds:(%esi),(%dx)
   12494:	61                   	popa   
   12495:	6d                   	insl   (%dx),%es:(%edi)
   12496:	65                   	gs
   12497:	5f                   	pop    %edi
   12498:	6c                   	insb   (%dx),%es:(%edi)
   12499:	65 6e                	outsb  %gs:(%esi),(%dx)
   1249b:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   1249e:	4d                   	dec    %ebp
   1249f:	41                   	inc    %ecx
   124a0:	58                   	pop    %eax
   124a1:	5f                   	pop    %edi
   124a2:	50                   	push   %eax
   124a3:	41                   	inc    %ecx
   124a4:	54                   	push   %esp
   124a5:	48                   	dec    %eax
   124a6:	00 00                	add    %al,(%eax)
   124a8:	4d                   	dec    %ebp
   124a9:	4d                   	dec    %ebp
   124aa:	3a 3a                	cmp    (%edx),%bh
   124ac:	64 6f                	outsl  %fs:(%esi),(%dx)
   124ae:	5f                   	pop    %edi
   124af:	65                   	gs
   124b0:	78 65                	js     12517 <LOGDISKBUF_SIZE+0x1917>
   124b2:	63 28                	arpl   %bp,(%eax)
   124b4:	29 3a                	sub    %edi,(%edx)
   124b6:	3a 73 74             	cmp    0x74(%ebx),%dh
   124b9:	61                   	popa   
   124ba:	74 28                	je     124e4 <LOGDISKBUF_SIZE+0x18e4>
   124bc:	29 20                	sub    %esp,(%eax)
   124be:	72 65                	jb     12525 <LOGDISKBUF_SIZE+0x1925>
   124c0:	74 75                	je     12537 <LOGDISKBUF_SIZE+0x1937>
   124c2:	72 6e                	jb     12532 <LOGDISKBUF_SIZE+0x1932>
   124c4:	73 20                	jae    124e6 <LOGDISKBUF_SIZE+0x18e6>
   124c6:	65                   	gs
   124c7:	72 72                	jb     1253b <LOGDISKBUF_SIZE+0x193b>
   124c9:	6f                   	outsl  %ds:(%esi),(%dx)
   124ca:	72 2e                	jb     124fa <LOGDISKBUF_SIZE+0x18fa>
   124cc:	20 25 73 00 73 2e    	and    %ah,0x2e730073
   124d2:	73 74                	jae    12548 <LOGDISKBUF_SIZE+0x1948>
   124d4:	5f                   	pop    %edi
   124d5:	73 69                	jae    12540 <LOGDISKBUF_SIZE+0x1940>
   124d7:	7a 65                	jp     1253e <LOGDISKBUF_SIZE+0x193e>
   124d9:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   124dc:	4d                   	dec    %ebp
   124dd:	4d                   	dec    %ebp
   124de:	42                   	inc    %edx
   124df:	55                   	push   %ebp
   124e0:	46                   	inc    %esi
   124e1:	5f                   	pop    %edi
   124e2:	53                   	push   %ebx
   124e3:	49                   	dec    %ecx
   124e4:	5a                   	pop    %edx
   124e5:	45                   	inc    %ebp
   124e6:	00 00                	add    %al,(%eax)
   124e8:	70 72                	jo     1255c <LOGDISKBUF_SIZE+0x195c>
   124ea:	6f                   	outsl  %ds:(%esi),(%dx)
   124eb:	67 5f                	addr16 pop %edi
   124ed:	68 64 72 2d 3e       	push   $0x3e2d7264
   124f2:	70 5f                	jo     12553 <LOGDISKBUF_SIZE+0x1953>
   124f4:	76 61                	jbe    12557 <LOGDISKBUF_SIZE+0x1957>
   124f6:	64                   	fs
   124f7:	64                   	fs
   124f8:	72 20                	jb     1251a <LOGDISKBUF_SIZE+0x191a>
   124fa:	2b 20                	sub    (%eax),%esp
   124fc:	70 72                	jo     12570 <LOGDISKBUF_SIZE+0x1970>
   124fe:	6f                   	outsl  %ds:(%esi),(%dx)
   124ff:	67 5f                	addr16 pop %edi
   12501:	68 64 72 2d 3e       	push   $0x3e2d7264
   12506:	70 5f                	jo     12567 <LOGDISKBUF_SIZE+0x1967>
   12508:	6d                   	insl   (%dx),%es:(%edi)
   12509:	65                   	gs
   1250a:	6d                   	insl   (%dx),%es:(%edi)
   1250b:	73 7a                	jae    12587 <LOGDISKBUF_SIZE+0x1987>
   1250d:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   12510:	50                   	push   %eax
   12511:	52                   	push   %edx
   12512:	4f                   	dec    %edi
   12513:	43                   	inc    %ebx
   12514:	5f                   	pop    %edi
   12515:	49                   	dec    %ecx
   12516:	4d                   	dec    %ebp
   12517:	41                   	inc    %ecx
   12518:	47                   	inc    %edi
   12519:	45                   	inc    %ebp
   1251a:	5f                   	pop    %edi
   1251b:	53                   	push   %ebx
   1251c:	49                   	dec    %ecx
   1251d:	5a                   	pop    %edx
   1251e:	45                   	inc    %ebp
   1251f:	5f                   	pop    %edi
   12520:	44                   	inc    %esp
   12521:	45                   	inc    %ebp
   12522:	46                   	inc    %esi
   12523:	41                   	inc    %ecx
   12524:	55                   	push   %ebp
   12525:	4c                   	dec    %esp
   12526:	54                   	push   %esp
   12527:	00 33                	add    %dh,(%ebx)
   12529:	36 30 6b 2f          	xor    %ch,%ss:0x2f(%ebx)
   1252d:	50                   	push   %eax
   1252e:	43                   	inc    %ebx
   1252f:	00 31                	add    %dh,(%ecx)
   12531:	2e 32 4d 00          	xor    %cs:0x0(%ebp),%cl
   12535:	33 36                	xor    (%esi),%esi
   12537:	30 6b 2f             	xor    %ch,0x2f(%ebx)
   1253a:	41                   	inc    %ecx
   1253b:	54                   	push   %esp
   1253c:	00 37                	add    %dh,(%edi)
   1253e:	32 30                	xor    (%eax),%dh
   12540:	6b 00 31             	imul   $0x31,(%eax),%eax
   12543:	2e                   	cs
   12544:	34 34                	xor    $0x34,%al
   12546:	4d                   	dec    %ebp
   12547:	00 37                	add    %dh,(%edi)
   12549:	32 30                	xor    (%eax),%dh
   1254b:	6b 2f 41             	imul   $0x41,(%edi),%ebp
   1254e:	54                   	push   %esp
   1254f:	00 66 6c             	add    %ah,0x6c(%esi)
   12552:	6f                   	outsl  %ds:(%esi),(%dx)
   12553:	70 70                	jo     125c5 <LOGDISKBUF_SIZE+0x19c5>
   12555:	79 20                	jns    12577 <LOGDISKBUF_SIZE+0x1977>
   12557:	64                   	fs
   12558:	72 69                	jb     125c3 <LOGDISKBUF_SIZE+0x19c3>
   1255a:	76 65                	jbe    125c1 <LOGDISKBUF_SIZE+0x19c1>
   1255c:	72 3a                	jb     12598 <LOGDISKBUF_SIZE+0x1998>
   1255e:	20 75 6e             	and    %dh,0x6e(%ebp)
   12561:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   12565:	6e                   	outsb  %ds:(%esi),(%dx)
   12566:	20 6d 73             	and    %ch,0x73(%ebp)
   12569:	67 00 00             	add    %al,(%bx,%si)
   1256c:	46                   	inc    %esi
   1256d:	53                   	push   %ebx
   1256e:	3a 3a                	cmp    (%edx),%bh
   12570:	6d                   	insl   (%dx),%es:(%edi)
   12571:	61                   	popa   
   12572:	69 6e 5f 6c 6f 6f 70 	imul   $0x706f6f6c,0x5f(%esi),%ebp
   12579:	20 28                	and    %ch,(%eax)
   1257b:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   12582:	20 6d 73             	and    %ch,0x73(%ebp)
   12585:	67 2e 74 79          	addr16 je,pn 12602 <LOGDISKBUF_SIZE+0x1a02>
   12589:	70 65                	jo     125f0 <LOGDISKBUF_SIZE+0x19f0>
   1258b:	29 00                	sub    %eax,(%eax)
   1258d:	00 00                	add    %al,(%eax)
   1258f:	00 68 c5             	add    %ch,-0x3b(%eax)
   12592:	00 00                	add    %al,(%eax)
   12594:	68 c5 00 00 32       	push   $0x320000c5
   12599:	c5 00                	lds    (%eax),%eax
   1259b:	00 32                	add    %dh,(%edx)
   1259d:	c5 00                	lds    (%eax),%eax
   1259f:	00 68 c5             	add    %ch,-0x3b(%eax)
   125a2:	00 00                	add    %al,(%eax)
   125a4:	66                   	data16
   125a5:	64                   	fs
   125a6:	25 64 20 69 73       	and    $0x73692064,%eax
   125ab:	20 25 73 00 66 64    	and    %ah,0x64660073
   125b1:	25 64 20 69 73       	and    $0x73692064,%eax
   125b6:	20 75 6e             	and    %dh,0x6e(%ebp)
   125b9:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   125bd:	6e                   	outsb  %ds:(%esi),(%dx)
   125be:	20 74 79 70          	and    %dh,0x70(%ecx,%edi,2)
   125c2:	65 20 25 64 00 46 6c 	and    %ah,%gs:0x6c460064
   125c9:	6f                   	outsl  %ds:(%esi),(%dx)
   125ca:	70 70                	jo     1263c <LOGDISKBUF_SIZE+0x1a3c>
   125cc:	79 20                	jns    125ee <LOGDISKBUF_SIZE+0x19ee>
   125ce:	64                   	fs
   125cf:	72 69                	jb     1263a <LOGDISKBUF_SIZE+0x1a3a>
   125d1:	76 65                	jbe    12638 <LOGDISKBUF_SIZE+0x1a38>
   125d3:	28 73 29             	sub    %dh,0x29(%ebx)
   125d6:	3a 20                	cmp    (%eax),%ah
   125d8:	00 2c 20             	add    %ch,(%eax,%eiz,1)
   125db:	00 0a                	add    %cl,(%edx)
   125dd:	00 00                	add    %al,(%eax)
   125df:	00 48 44             	add    %cl,0x44(%eax)
   125e2:	20 64 72 69          	and    %ah,0x69(%edx,%esi,2)
   125e6:	76 65                	jbe    1264d <LOGDISKBUF_SIZE+0x1a4d>
   125e8:	72 3a                	jb     12624 <LOGDISKBUF_SIZE+0x1a24>
   125ea:	3a 75 6e             	cmp    0x6e(%ebp),%dh
   125ed:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   125f1:	6e                   	outsb  %ds:(%esi),(%dx)
   125f2:	20 6d 73             	and    %ch,0x73(%ebp)
   125f5:	67 00 00             	add    %al,(%bx,%si)
   125f8:	46                   	inc    %esi
   125f9:	53                   	push   %ebx
   125fa:	3a 3a                	cmp    (%edx),%bh
   125fc:	6d                   	insl   (%dx),%es:(%edi)
   125fd:	61                   	popa   
   125fe:	69 6e 5f 6c 6f 6f 70 	imul   $0x706f6f6c,0x5f(%esi),%ebp
   12605:	20 28                	and    %ch,(%eax)
   12607:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   1260e:	20 6d 73             	and    %ch,0x73(%ebp)
   12611:	67 2e 74 79          	addr16 je,pn 1268e <LOGDISKBUF_SIZE+0x1a8e>
   12615:	70 65                	jo     1267c <LOGDISKBUF_SIZE+0x1a7c>
   12617:	29 00                	sub    %eax,(%eax)
   12619:	00 00                	add    %al,(%eax)
   1261b:	00 74 c7 00          	add    %dh,0x0(%edi,%eax,8)
   1261f:	00 81 c7 00 00 8e    	add    %al,-0x71ffff39(%ecx)
   12625:	c7 00 00 8e c7 00    	movl   $0xc78e00,(%eax)
   1262b:	00 a3 c7 00 00 25    	add    %ah,0x250000c7(%ebx)
   12631:	64 20 68 61          	and    %ch,%fs:0x61(%eax)
   12635:	72 64                	jb     1269b <LOGDISKBUF_SIZE+0x1a9b>
   12637:	20 64 72 69          	and    %ah,0x69(%edx,%esi,2)
   1263b:	76 65                	jbe    126a2 <LOGDISKBUF_SIZE+0x1aa2>
   1263d:	73 0a                	jae    12649 <LOGDISKBUF_SIZE+0x1a49>
   1263f:	00 68 64             	add    %ch,0x64(%eax)
   12642:	2e 63 00             	arpl   %ax,%cs:(%eax)
   12645:	2a 70 4e             	sub    0x4e(%eax),%dh
   12648:	72 44                	jb     1268e <LOGDISKBUF_SIZE+0x1a8e>
   1264a:	72 69                	jb     126b5 <LOGDISKBUF_SIZE+0x1ab5>
   1264c:	76 65                	jbe    126b3 <LOGDISKBUF_SIZE+0x1ab3>
   1264e:	73 00                	jae    12650 <LOGDISKBUF_SIZE+0x1a50>
   12650:	64                   	fs
   12651:	72 69                	jb     126bc <LOGDISKBUF_SIZE+0x1abc>
   12653:	76 65                	jbe    126ba <LOGDISKBUF_SIZE+0x1aba>
   12655:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   1265b:	00 28                	add    %ch,(%eax)
   1265d:	70 6f                	jo     126ce <LOGDISKBUF_SIZE+0x1ace>
   1265f:	73 20                	jae    12681 <LOGDISKBUF_SIZE+0x1a81>
   12661:	3e 3e 20 53 45       	ds and %dl,%ds:0x45(%ebx)
   12666:	43                   	inc    %ebx
   12667:	54                   	push   %esp
   12668:	4f                   	dec    %edi
   12669:	52                   	push   %edx
   1266a:	5f                   	pop    %edi
   1266b:	53                   	push   %ebx
   1266c:	49                   	dec    %ecx
   1266d:	5a                   	pop    %edx
   1266e:	45                   	inc    %ebp
   1266f:	5f                   	pop    %edi
   12670:	53                   	push   %ebx
   12671:	48                   	dec    %eax
   12672:	49                   	dec    %ecx
   12673:	46                   	inc    %esi
   12674:	54                   	push   %esp
   12675:	29 20                	sub    %esp,(%eax)
   12677:	3c 20                	cmp    $0x20,%al
   12679:	28 31                	sub    %dh,(%ecx)
   1267b:	20 3c 3c             	and    %bh,(%esp,%edi,1)
   1267e:	20 33                	and    %dh,(%ebx)
   12680:	31 29                	xor    %ebp,(%ecx)
   12682:	00 28                	add    %ch,(%eax)
   12684:	70 6f                	jo     126f5 <LOGDISKBUF_SIZE+0x1af5>
   12686:	73 20                	jae    126a8 <LOGDISKBUF_SIZE+0x1aa8>
   12688:	26 20 30             	and    %dh,%es:(%eax)
   1268b:	78 31                	js     126be <LOGDISKBUF_SIZE+0x1abe>
   1268d:	46                   	inc    %esi
   1268e:	46                   	inc    %esi
   1268f:	29 20                	sub    %esp,(%eax)
   12691:	3d 3d 20 30 00       	cmp    $0x30203d,%eax
   12696:	68 64 20 77 72       	push   $0x72772064
   1269b:	69 74 69 6e 67 20 65 	imul   $0x72652067,0x6e(%ecx,%ebp,2),%esi
   126a2:	72 
   126a3:	72 6f                	jb     12714 <LOGDISKBUF_SIZE+0x1b14>
   126a5:	72 2e                	jb     126d5 <LOGDISKBUF_SIZE+0x1ad5>
   126a7:	00 30                	add    %dh,(%eax)
   126a9:	00 6e 72             	add    %ch,0x72(%esi)
   126ac:	5f                   	pop    %edi
   126ad:	70 72                	jo     12721 <LOGDISKBUF_SIZE+0x1b21>
   126af:	69 6d 5f 70 61 72 74 	imul   $0x74726170,0x5f(%ebp),%ebp
   126b6:	73 20                	jae    126d8 <LOGDISKBUF_SIZE+0x1ad8>
   126b8:	21 3d 20 30 00 68    	and    %edi,0x68003020
   126be:	64                   	fs
   126bf:	25 64 3a 20 00       	and    $0x203a64,%eax
   126c4:	48                   	dec    %eax
   126c5:	44                   	inc    %esp
   126c6:	20 4d 6f             	and    %cl,0x6f(%ebp)
   126c9:	64                   	fs
   126ca:	65                   	gs
   126cb:	6c                   	insb   (%dx),%es:(%edi)
   126cc:	3a 20                	cmp    (%eax),%ah
   126ce:	00 48 44             	add    %cl,0x44(%eax)
   126d1:	20 53 65             	and    %dl,0x65(%ebx)
   126d4:	72 69                	jb     1273f <LOGDISKBUF_SIZE+0x1b3f>
   126d6:	61                   	popa   
   126d7:	6c                   	insb   (%dx),%es:(%edi)
   126d8:	20 4e 75             	and    %cl,0x75(%esi)
   126db:	6d                   	insl   (%dx),%es:(%edi)
   126dc:	62 65 72             	bound  %esp,0x72(%ebp)
   126df:	3a 20                	cmp    (%eax),%ah
   126e1:	00 25 64 4d 42 20    	add    %ah,0x20424d64
   126e7:	00 25 63 00 20 00    	add    %ah,0x200063
   126ed:	4c                   	dec    %esp
   126ee:	42                   	inc    %edx
   126ef:	41                   	inc    %ecx
   126f0:	20 00                	and    %al,(%eax)
   126f2:	4c                   	dec    %esp
   126f3:	42                   	inc    %edx
   126f4:	41                   	inc    %ecx
   126f5:	34 38                	xor    $0x38,%al
   126f7:	20 00                	and    %al,(%eax)
   126f9:	0a 00                	or     (%eax),%al
   126fb:	68 64 20 65 72       	push   $0x72652064
   12700:	72 6f                	jb     12771 <LOGDISKBUF_SIZE+0x1b71>
   12702:	72 2e                	jb     12732 <LOGDISKBUF_SIZE+0x1b32>
   12704:	00 00                	add    %al,(%eax)
   12706:	00 00                	add    %al,(%eax)
   12708:	72 61                	jb     1276b <LOGDISKBUF_SIZE+0x1b6b>
   1270a:	6d                   	insl   (%dx),%es:(%edi)
   1270b:	64 69 73 6b 20 64 72 	imul   $0x69726420,%fs:0x6b(%ebx),%esi
   12712:	69 
   12713:	76 65                	jbe    1277a <LOGDISKBUF_SIZE+0x1b7a>
   12715:	72 3a                	jb     12751 <LOGDISKBUF_SIZE+0x1b51>
   12717:	20 75 6e             	and    %dh,0x6e(%ebp)
   1271a:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   1271e:	6e                   	outsb  %ds:(%esi),(%dx)
   1271f:	20 6d 73             	and    %ch,0x73(%ebp)
   12722:	67 00 46 53          	add    %al,0x53(%bp)
   12726:	3a 3a                	cmp    (%edx),%bh
   12728:	6d                   	insl   (%dx),%es:(%edi)
   12729:	61                   	popa   
   1272a:	69 6e 5f 6c 6f 6f 70 	imul   $0x706f6f6c,0x5f(%esi),%ebp
   12731:	20 28                	and    %ch,(%eax)
   12733:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   1273a:	20 6d 73             	and    %ch,0x73(%ebp)
   1273d:	67 2e 74 79          	addr16 je,pn 127ba <LOGDISKBUF_SIZE+0x1bba>
   12741:	70 65                	jo     127a8 <LOGDISKBUF_SIZE+0x1ba8>
   12743:	29 00                	sub    %eax,(%eax)
   12745:	00 00                	add    %al,(%eax)
   12747:	00 4b d6             	add    %cl,-0x2a(%ebx)
   1274a:	00 00                	add    %al,(%eax)
   1274c:	4b                   	dec    %ebx
   1274d:	d6                   	(bad)  
   1274e:	00 00                	add    %al,(%eax)
   12750:	1d d6 00 00 1d       	sbb    $0x1d0000d6,%eax
   12755:	d6                   	(bad)  
   12756:	00 00                	add    %al,(%eax)
   12758:	4b                   	dec    %ebx
   12759:	d6                   	(bad)  
   1275a:	00 00                	add    %al,(%eax)
   1275c:	52                   	push   %edx
   1275d:	41                   	inc    %ecx
   1275e:	4d                   	dec    %ebp
   1275f:	44                   	inc    %esp
   12760:	49                   	dec    %ecx
   12761:	53                   	push   %ebx
   12762:	4b                   	dec    %ebx
   12763:	3a 20                	cmp    (%eax),%ah
   12765:	25 64 20 62 79       	and    $0x79622064,%eax
   1276a:	74 65                	je     127d1 <LOGDISKBUF_SIZE+0x1bd1>
   1276c:	73 28                	jae    12796 <LOGDISKBUF_SIZE+0x1b96>
   1276e:	25 64 20 6b 42       	and    $0x426b2064,%eax
   12773:	29 2c 20             	sub    %ebp,(%eax,%eiz,1)
   12776:	62 61 73             	bound  %esp,0x73(%ecx)
   12779:	65 3a 20             	cmp    %gs:(%eax),%ah
   1277c:	30 78 25             	xor    %bh,0x25(%eax)
   1277f:	78 0a                	js     1278b <LOGDISKBUF_SIZE+0x1b8b>
   12781:	00 00                	add    %al,(%eax)
   12783:	00 52 41             	add    %dl,0x41(%edx)
   12786:	4d                   	dec    %ebp
   12787:	44                   	inc    %esp
   12788:	49                   	dec    %ecx
   12789:	53                   	push   %ebx
   1278a:	4b                   	dec    %ebx
   1278b:	3a 20                	cmp    (%eax),%ah
   1278d:	4c                   	dec    %esp
   1278e:	79 6f                	jns    127ff <LOGDISKBUF_SIZE+0x1bff>
   12790:	73 20                	jae    127b2 <LOGDISKBUF_SIZE+0x1bb2>
   12792:	66 69 6c 65 73 79 73 	imul   $0x7379,0x73(%ebp,%eiz,2),%bp
   12799:	74 65                	je     12800 <LOGDISKBUF_SIZE+0x1c00>
   1279b:	6d                   	insl   (%dx),%es:(%edi)
   1279c:	20 66 6f             	and    %ah,0x6f(%esi)
   1279f:	75 6e                	jne    1280f <LOGDISKBUF_SIZE+0x1c0f>
   127a1:	64 20 61 74          	and    %ah,%fs:0x74(%ecx)
   127a5:	20 73 65             	and    %dh,0x65(%ebx)
   127a8:	63 74 6f 72          	arpl   %si,0x72(%edi,%ebp,2)
   127ac:	20 25 64 0a 00 00    	and    %ah,0xa64
   127b2:	00 00                	add    %al,(%eax)
   127b4:	52                   	push   %edx
   127b5:	41                   	inc    %ecx
   127b6:	4d                   	dec    %ebp
   127b7:	44                   	inc    %esp
   127b8:	49                   	dec    %ecx
   127b9:	53                   	push   %ebx
   127ba:	4b                   	dec    %ebx
   127bb:	3a 20                	cmp    (%eax),%ah
   127bd:	69 6d 61 67 65 20 74 	imul   $0x74206567,0x61(%ebp),%ebp
   127c4:	6f                   	outsl  %ds:(%esi),(%dx)
   127c5:	6f                   	outsl  %ds:(%esi),(%dx)
   127c6:	20 62 69             	and    %ah,0x69(%edx)
   127c9:	67 21 20             	and    %esp,(%bx,%si)
   127cc:	28 25 64 2f 25 64    	sub    %ah,0x64252f64
   127d2:	20 73 65             	and    %dh,0x65(%ebx)
   127d5:	63 74 6f 72          	arpl   %si,0x72(%edi,%ebp,2)
   127d9:	73 29                	jae    12804 <LOGDISKBUF_SIZE+0x1c04>
   127db:	0a 00                	or     (%eax),%al
   127dd:	00 00                	add    %al,(%eax)
   127df:	00 4c 6f 61          	add    %cl,0x61(%edi,%ebp,2)
   127e3:	64 69 6e 67 20 25 64 	imul   $0x20642520,%fs:0x67(%esi),%ebp
   127ea:	20 
   127eb:	62 79 74             	bound  %edi,0x74(%ecx)
   127ee:	65                   	gs
   127ef:	73 20                	jae    12811 <LOGDISKBUF_SIZE+0x1c11>
   127f1:	69 6e 74 6f 20 72 61 	imul   $0x6172206f,0x74(%esi),%ebp
   127f8:	6d                   	insl   (%dx),%es:(%edi)
   127f9:	64 69 73 6b 2e 2e 2e 	imul   $0x2e2e2e,%fs:0x6b(%ebx),%esi
   12800:	00 
   12801:	08 25 63 00 64 6f    	or     %ah,0x6f640063
   12807:	6e                   	outsb  %ds:(%esi),(%dx)
   12808:	65 2e 0a 00          	gs or  %cs:%gs:(%eax),%al
   1280c:	73 63                	jae    12871 <LOGDISKBUF_SIZE+0x1c71>
   1280e:	73 69                	jae    12879 <LOGDISKBUF_SIZE+0x1c79>
   12810:	20 64 72 69          	and    %ah,0x69(%edx,%esi,2)
   12814:	76 65                	jbe    1287b <LOGDISKBUF_SIZE+0x1c7b>
   12816:	72 3a                	jb     12852 <LOGDISKBUF_SIZE+0x1c52>
   12818:	20 75 6e             	and    %dh,0x6e(%ebp)
   1281b:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   1281f:	6e                   	outsb  %ds:(%esi),(%dx)
   12820:	20 6d 73             	and    %ch,0x73(%ebp)
   12823:	67 00 00             	add    %al,(%bx,%si)
   12826:	00 00                	add    %al,(%eax)
   12828:	46                   	inc    %esi
   12829:	53                   	push   %ebx
   1282a:	3a 3a                	cmp    (%edx),%bh
   1282c:	6d                   	insl   (%dx),%es:(%edi)
   1282d:	61                   	popa   
   1282e:	69 6e 5f 6c 6f 6f 70 	imul   $0x706f6f6c,0x5f(%esi),%ebp
   12835:	20 28                	and    %ch,(%eax)
   12837:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   1283e:	20 6d 73             	and    %ch,0x73(%ebp)
   12841:	67 2e 74 79          	addr16 je,pn 128be <LOGDISKBUF_SIZE+0x1cbe>
   12845:	70 65                	jo     128ac <LOGDISKBUF_SIZE+0x1cac>
   12847:	29 00                	sub    %eax,(%eax)
   12849:	00 00                	add    %al,(%eax)
   1284b:	00 e0                	add    %ah,%al
   1284d:	da 00                	fiaddl (%eax)
   1284f:	00 e0                	add    %ah,%al
   12851:	da 00                	fiaddl (%eax)
   12853:	00 aa da 00 00 aa    	add    %ch,-0x55ffff26(%edx)
   12859:	da 00                	fiaddl (%eax)
   1285b:	00 e0                	add    %ah,%al
   1285d:	da 00                	fiaddl (%eax)
   1285f:	00 63 6f             	add    %ah,0x6f(%ebx)
   12862:	6e                   	outsb  %ds:(%esi),(%dx)
   12863:	73 6f                	jae    128d4 <LOGDISKBUF_SIZE+0x1cd4>
   12865:	6c                   	insb   (%dx),%es:(%edi)
   12866:	65 2e 63 00          	gs arpl %ax,%cs:%gs:(%eax)
   1286a:	00 00                	add    %al,(%eax)
   1286c:	63 6f 6e             	arpl   %bp,0x6e(%edi)
   1286f:	2d 3e 63 75 72       	sub    $0x7275633e,%eax
   12874:	73 6f                	jae    128e5 <LOGDISKBUF_SIZE+0x1ce5>
   12876:	72 20                	jb     12898 <LOGDISKBUF_SIZE+0x1c98>
   12878:	2d 20 63 6f 6e       	sub    $0x6e6f6320,%eax
   1287d:	2d 3e 6f 72 69       	sub    $0x69726f3e,%eax
   12882:	67 20 3c             	and    %bh,(%si)
   12885:	20 63 6f             	and    %ah,0x6f(%ebx)
   12888:	6e                   	outsb  %ds:(%esi),(%dx)
   12889:	2d 3e 63 6f 6e       	sub    $0x6e6f633e,%eax
   1288e:	5f                   	pop    %edi
   1288f:	73 69                	jae    128fa <LOGDISKBUF_SIZE+0x1cfa>
   12891:	7a 65                	jp     128f8 <LOGDISKBUF_SIZE+0x1cf8>
   12893:	00 5b de             	add    %bl,-0x22(%ebx)
   12896:	00 00                	add    %al,(%eax)
   12898:	a9 dd 00 00 fe       	test   $0xfe0000dd,%eax
   1289d:	dd 00                	fldl   (%eax)
   1289f:	00 85 dd 00 00 33    	add    %al,0x330000dd(%ebp)
   128a5:	de 00                	fiadd  (%eax)
   128a7:	00 33                	add    %dh,(%ebx)
   128a9:	de 00                	fiadd  (%eax)
   128ab:	00 e0                	add    %ah,%al
   128ad:	dd 00                	fldl   (%eax)
   128af:	00 33                	add    %dh,(%ebx)
   128b1:	de 00                	fiadd  (%eax)
   128b3:	00 33                	add    %dh,(%ebx)
   128b5:	de 00                	fiadd  (%eax)
   128b7:	00 33                	add    %dh,(%ebx)
   128b9:	de 00                	fiadd  (%eax)
   128bb:	00 33                	add    %dh,(%ebx)
   128bd:	de 00                	fiadd  (%eax)
   128bf:	00 33                	add    %dh,(%ebx)
   128c1:	de 00                	fiadd  (%eax)
   128c3:	00 33                	add    %dh,(%ebx)
   128c5:	de 00                	fiadd  (%eax)
   128c7:	00 33                	add    %dh,(%ebx)
   128c9:	de 00                	fiadd  (%eax)
   128cb:	00 33                	add    %dh,(%ebx)
   128cd:	de 00                	fiadd  (%eax)
   128cf:	00 33                	add    %dh,(%ebx)
   128d1:	de 00                	fiadd  (%eax)
   128d3:	00 33                	add    %dh,(%ebx)
   128d5:	de 00                	fiadd  (%eax)
   128d7:	00 33                	add    %dh,(%ebx)
   128d9:	de 00                	fiadd  (%eax)
   128db:	00 33                	add    %dh,(%ebx)
   128dd:	de 00                	fiadd  (%eax)
   128df:	00 33                	add    %dh,(%ebx)
   128e1:	de 00                	fiadd  (%eax)
   128e3:	00 27                	add    %ah,(%edi)
   128e5:	de 00                	fiadd  (%eax)
   128e7:	00 09                	add    %cl,(%ecx)
   128e9:	e7 00                	out    %eax,$0x0
   128eb:	00 4a e3             	add    %cl,-0x1d(%edx)
   128ee:	00 00                	add    %al,(%eax)
   128f0:	8e e3                	mov    %ebx,%fs
   128f2:	00 00                	add    %al,(%eax)
   128f4:	d2 e3                	shl    %cl,%bl
   128f6:	00 00                	add    %al,(%eax)
   128f8:	1b e4                	sbb    %esp,%esp
   128fa:	00 00                	add    %al,(%eax)
   128fc:	00 e8                	add    %ch,%al
   128fe:	00 00                	add    %al,(%eax)
   12900:	00 e8                	add    %ch,%al
   12902:	00 00                	add    %al,(%eax)
   12904:	00 e8                	add    %ch,%al
   12906:	00 00                	add    %al,(%eax)
   12908:	64                   	fs
   12909:	e4 00                	in     $0x0,%al
   1290b:	00 00                	add    %al,(%eax)
   1290d:	e8 00 00 ad e4       	call   e4ae2912 <_end+0xe4a8954a>
   12912:	00 00                	add    %al,(%eax)
   12914:	3c e5                	cmp    $0xe5,%al
   12916:	00 00                	add    %al,(%eax)
   12918:	bf e5 00 00 56       	mov    $0x560000e5,%edi
   1291d:	e6 00                	out    %al,$0x0
   1291f:	00 00                	add    %al,(%eax)
   12921:	e8 00 00 00 e8       	call   e8012926 <_end+0xe7fb955e>
   12926:	00 00                	add    %al,(%eax)
   12928:	81 e7 00 00 64 69    	and    $0x69640000,%edi
   1292e:	72 20                	jb     12950 <LOGDISKBUF_SIZE+0x1d50>
   12930:	3d 3d 20 53 43       	cmp    $0x4353203d,%eax
   12935:	52                   	push   %edx
   12936:	5f                   	pop    %edi
   12937:	44                   	inc    %esp
   12938:	4e                   	dec    %esi
   12939:	20 7c 7c 20          	and    %bh,0x20(%esp,%edi,2)
   1293d:	64 69 72 20 3d 3d 20 	imul   $0x53203d3d,%fs:0x20(%edx),%esi
   12944:	53 
   12945:	43                   	inc    %ebx
   12946:	52                   	push   %edx
   12947:	5f                   	pop    %edi
   12948:	55                   	push   %ebp
   12949:	50                   	push   %eax
   1294a:	00 00                	add    %al,(%eax)
   1294c:	e0 ed                	loopne 1293b <LOGDISKBUF_SIZE+0x1d3b>
   1294e:	00 00                	add    %al,(%eax)
   12950:	ed                   	in     (%dx),%eax
   12951:	ed                   	in     (%dx),%eax
   12952:	00 00                	add    %al,(%eax)
   12954:	fa                   	cli    
   12955:	ed                   	in     (%dx),%eax
   12956:	00 00                	add    %al,(%eax)
   12958:	07                   	pop    %es
   12959:	ee                   	out    %al,(%dx)
   1295a:	00 00                	add    %al,(%eax)
   1295c:	11 ee                	adc    %ebp,%esi
   1295e:	00 00                	add    %al,(%eax)
   12960:	1b ee                	sbb    %esi,%ebp
   12962:	00 00                	add    %al,(%eax)
   12964:	25 ee 00 00 44       	and    $0x440000ee,%eax
   12969:	ee                   	out    %al,(%dx)
   1296a:	00 00                	add    %al,(%eax)
   1296c:	63 ee                	arpl   %bp,%si
   1296e:	00 00                	add    %al,(%eax)
   12970:	d4 ee                	aam    $0xffffffee
   12972:	00 00                	add    %al,(%eax)
   12974:	e0 ee                	loopne 12964 <LOGDISKBUF_SIZE+0x1d64>
   12976:	00 00                	add    %al,(%eax)
   12978:	ec                   	in     (%dx),%al
   12979:	ee                   	out    %al,(%dx)
   1297a:	00 00                	add    %al,(%eax)
   1297c:	f8                   	clc    
   1297d:	ee                   	out    %al,(%dx)
   1297e:	00 00                	add    %al,(%eax)
   12980:	04 ef                	add    $0xef,%al
   12982:	00 00                	add    %al,(%eax)
   12984:	b0 ef                	mov    $0xef,%al
   12986:	00 00                	add    %al,(%eax)
   12988:	83 ef 00             	sub    $0x0,%edi
   1298b:	00 68 ef             	add    %ch,-0x11(%eax)
   1298e:	00 00                	add    %al,(%eax)
   12990:	95                   	xchg   %eax,%ebp
   12991:	ef                   	out    %eax,(%dx)
   12992:	00 00                	add    %al,(%eax)
   12994:	7a ef                	jp     12985 <LOGDISKBUF_SIZE+0x1d85>
   12996:	00 00                	add    %al,(%eax)
   12998:	9e                   	sahf   
   12999:	ef                   	out    %eax,(%dx)
   1299a:	00 00                	add    %al,(%eax)
   1299c:	b9 ef 00 00 a7       	mov    $0xa70000ef,%ecx
   129a1:	ef                   	out    %eax,(%dx)
   129a2:	00 00                	add    %al,(%eax)
   129a4:	5f                   	pop    %edi
   129a5:	ef                   	out    %eax,(%dx)
   129a6:	00 00                	add    %al,(%eax)
   129a8:	8c ef                	mov    %gs,%edi
   129aa:	00 00                	add    %al,(%eax)
   129ac:	71 ef                	jno    1299d <LOGDISKBUF_SIZE+0x1d9d>
   129ae:	00 00                	add    %al,(%eax)
   129b0:	74 74                	je     12a26 <LOGDISKBUF_SIZE+0x1e26>
   129b2:	79 2e                	jns    129e2 <LOGDISKBUF_SIZE+0x1de2>
   129b4:	63 00                	arpl   %ax,(%eax)
   129b6:	73 72                	jae    12a2a <LOGDISKBUF_SIZE+0x1e2a>
   129b8:	63 20                	arpl   %sp,(%eax)
   129ba:	21 3d 20 54 41 53    	and    %edi,0x53415420
   129c0:	4b                   	dec    %ebx
   129c1:	5f                   	pop    %edi
   129c2:	54                   	push   %esp
   129c3:	54                   	push   %esp
   129c4:	59                   	pop    %ecx
   129c5:	00 54 54 59          	add    %dl,0x59(%esp,%edx,2)
   129c9:	3a 3a                	cmp    (%edx),%bh
   129cb:	75 6e                	jne    12a3b <LOGDISKBUF_SIZE+0x1e3b>
   129cd:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   129d1:	6e                   	outsb  %ds:(%esi),(%dx)
   129d2:	20 6d 73             	and    %ch,0x73(%ebp)
   129d5:	67 00 00             	add    %al,(%bx,%si)
   129d8:	b9 f3 00 00 89       	mov    $0x890000f3,%ecx
   129dd:	f3 00 00             	repz add %al,(%eax)
   129e0:	a1 f3 00 00 64       	mov    0x640000f3,%eax
   129e5:	f4                   	hlt    
   129e6:	00 00                	add    %al,(%eax)
   129e8:	64                   	fs
   129e9:	f4                   	hlt    
   129ea:	00 00                	add    %al,(%eax)
   129ec:	64                   	fs
   129ed:	f4                   	hlt    
   129ee:	00 00                	add    %al,(%eax)
   129f0:	64                   	fs
   129f1:	f4                   	hlt    
   129f2:	00 00                	add    %al,(%eax)
   129f4:	64                   	fs
   129f5:	f4                   	hlt    
   129f6:	00 00                	add    %al,(%eax)
   129f8:	64                   	fs
   129f9:	f4                   	hlt    
   129fa:	00 00                	add    %al,(%eax)
   129fc:	64                   	fs
   129fd:	f4                   	hlt    
   129fe:	00 00                	add    %al,(%eax)
   12a00:	64                   	fs
   12a01:	f4                   	hlt    
   12a02:	00 00                	add    %al,(%eax)
   12a04:	64                   	fs
   12a05:	f4                   	hlt    
   12a06:	00 00                	add    %al,(%eax)
   12a08:	64                   	fs
   12a09:	f4                   	hlt    
   12a0a:	00 00                	add    %al,(%eax)
   12a0c:	64                   	fs
   12a0d:	f4                   	hlt    
   12a0e:	00 00                	add    %al,(%eax)
   12a10:	64                   	fs
   12a11:	f4                   	hlt    
   12a12:	00 00                	add    %al,(%eax)
   12a14:	37                   	aaa    
   12a15:	f4                   	hlt    
   12a16:	00 00                	add    %al,(%eax)
   12a18:	37                   	aaa    
   12a19:	f4                   	hlt    
   12a1a:	00 00                	add    %al,(%eax)
   12a1c:	37                   	aaa    
   12a1d:	f4                   	hlt    
   12a1e:	00 00                	add    %al,(%eax)
   12a20:	37                   	aaa    
   12a21:	f4                   	hlt    
   12a22:	00 00                	add    %al,(%eax)
   12a24:	37                   	aaa    
   12a25:	f4                   	hlt    
   12a26:	00 00                	add    %al,(%eax)
   12a28:	37                   	aaa    
   12a29:	f4                   	hlt    
   12a2a:	00 00                	add    %al,(%eax)
   12a2c:	37                   	aaa    
   12a2d:	f4                   	hlt    
   12a2e:	00 00                	add    %al,(%eax)
   12a30:	37                   	aaa    
   12a31:	f4                   	hlt    
   12a32:	00 00                	add    %al,(%eax)
   12a34:	37                   	aaa    
   12a35:	f4                   	hlt    
   12a36:	00 00                	add    %al,(%eax)
   12a38:	37                   	aaa    
   12a39:	f4                   	hlt    
   12a3a:	00 00                	add    %al,(%eax)
   12a3c:	37                   	aaa    
   12a3d:	f4                   	hlt    
   12a3e:	00 00                	add    %al,(%eax)
   12a40:	37                   	aaa    
   12a41:	f4                   	hlt    
   12a42:	00 00                	add    %al,(%eax)
   12a44:	64                   	fs
   12a45:	f4                   	hlt    
   12a46:	00 00                	add    %al,(%eax)
   12a48:	64                   	fs
   12a49:	f4                   	hlt    
   12a4a:	00 00                	add    %al,(%eax)
   12a4c:	64                   	fs
   12a4d:	f4                   	hlt    
   12a4e:	00 00                	add    %al,(%eax)
   12a50:	64                   	fs
   12a51:	f4                   	hlt    
   12a52:	00 00                	add    %al,(%eax)
   12a54:	64                   	fs
   12a55:	f4                   	hlt    
   12a56:	00 00                	add    %al,(%eax)
   12a58:	64                   	fs
   12a59:	f4                   	hlt    
   12a5a:	00 00                	add    %al,(%eax)
   12a5c:	64                   	fs
   12a5d:	f4                   	hlt    
   12a5e:	00 00                	add    %al,(%eax)
   12a60:	64                   	fs
   12a61:	f4                   	hlt    
   12a62:	00 00                	add    %al,(%eax)
   12a64:	d1                   	(bad)  
   12a65:	f3 00 00             	repz add %al,(%eax)
   12a68:	04 f4                	add    $0xf4,%al
   12a6a:	00 00                	add    %al,(%eax)
   12a6c:	68 65 61 64 3a       	push   $0x3a646165
   12a71:	20 25 64 0a 00 74    	and    %ah,0x74000a64
   12a77:	61                   	popa   
   12a78:	69 6c 3a 20 25 64 0a 	imul   $0xa6425,0x20(%edx,%edi,1),%ebp
   12a7f:	00 
   12a80:	63 6e 74             	arpl   %bp,0x74(%esi)
   12a83:	3a 20                	cmp    (%eax),%ah
   12a85:	25 64 0a 00 63       	and    $0x63000a64,%eax
   12a8a:	61                   	popa   
   12a8b:	6c                   	insb   (%dx),%es:(%edi)
   12a8c:	6c                   	insb   (%dx),%es:(%edi)
   12a8d:	65                   	gs
   12a8e:	72 3a                	jb     12aca <LOGDISKBUF_SIZE+0x1eca>
   12a90:	20 25 73 20 28 25    	and    %ah,0x25282073
   12a96:	64 29 0a             	sub    %ecx,%fs:(%edx)
   12a99:	00 72 65             	add    %dh,0x65(%edx)
   12a9c:	71 5f                	jno    12afd <LOGDISKBUF_SIZE+0x1efd>
   12a9e:	62 75 66             	bound  %esi,0x66(%ebp)
   12aa1:	3a 20                	cmp    (%eax),%ah
   12aa3:	25 64 0a 00 6c       	and    $0x6c000a64,%eax
   12aa8:	65                   	gs
   12aa9:	66                   	data16
   12aaa:	74 5f                	je     12b0b <LOGDISKBUF_SIZE+0x1f0b>
   12aac:	63 6e 74             	arpl   %bp,0x74(%esi)
   12aaf:	3a 20                	cmp    (%eax),%ah
   12ab1:	25 64 0a 00 74       	and    $0x74000a64,%eax
   12ab6:	72 61                	jb     12b19 <LOGDISKBUF_SIZE+0x1f19>
   12ab8:	6e                   	outsb  %ds:(%esi),(%dx)
   12ab9:	73 5f                	jae    12b1a <LOGDISKBUF_SIZE+0x1f1a>
   12abb:	63 6e 74             	arpl   %bp,0x74(%esi)
   12abe:	3a 20                	cmp    (%eax),%ah
   12ac0:	25 64 0a 00 2d       	and    $0x2d000a64,%eax
   12ac5:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12aca:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12acf:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12ad4:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12ad9:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12ade:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   12ae3:	2d 0a 00 0a 00       	sub    $0xa000a,%eax
   12ae8:	64                   	fs
   12ae9:	65                   	gs
   12aea:	76 5f                	jbe    12b4b <LOGDISKBUF_SIZE+0x1f4b>
   12aec:	64                   	fs
   12aed:	72 69                	jb     12b58 <LOGDISKBUF_SIZE+0x1f58>
   12aef:	76 65                	jbe    12b56 <LOGDISKBUF_SIZE+0x1f56>
   12af1:	72 5f                	jb     12b52 <LOGDISKBUF_SIZE+0x1f52>
   12af3:	74 61                	je     12b56 <LOGDISKBUF_SIZE+0x1f56>
   12af5:	73 6b                	jae    12b62 <LOGDISKBUF_SIZE+0x1f62>
   12af7:	3a 3a                	cmp    (%edx),%bh
   12af9:	75 6e                	jne    12b69 <LOGDISKBUF_SIZE+0x1f69>
   12afb:	6b 6e 6f 77          	imul   $0x77,0x6f(%esi),%ebp
   12aff:	6e                   	outsb  %ds:(%esi),(%dx)
   12b00:	20 6d 73             	and    %ch,0x73(%ebp)
   12b03:	67 00 00             	add    %al,(%bx,%si)
   12b06:	00 00                	add    %al,(%eax)
   12b08:	46                   	inc    %esi
   12b09:	53                   	push   %ebx
   12b0a:	3a 3a                	cmp    (%edx),%bh
   12b0c:	6d                   	insl   (%dx),%es:(%edi)
   12b0d:	61                   	popa   
   12b0e:	69 6e 5f 6c 6f 6f 70 	imul   $0x706f6f6c,0x5f(%esi),%ebp
   12b15:	20 28                	and    %ch,(%eax)
   12b17:	69 6e 76 61 6c 69 64 	imul   $0x64696c61,0x76(%esi),%ebp
   12b1e:	20 6d 73             	and    %ch,0x73(%ebp)
   12b21:	67 2e 74 79          	addr16 je,pn 12b9e <LOGDISKBUF_SIZE+0x1f9e>
   12b25:	70 65                	jo     12b8c <LOGDISKBUF_SIZE+0x1f8c>
   12b27:	29 00                	sub    %eax,(%eax)
   12b29:	00 00                	add    %al,(%eax)
   12b2b:	00 f3                	add    %dh,%bl
   12b2d:	fb                   	sti    
   12b2e:	00 00                	add    %al,(%eax)
   12b30:	02 fc                	add    %ah,%bh
   12b32:	00 00                	add    %al,(%eax)
   12b34:	12 fc                	adc    %ah,%bh
   12b36:	00 00                	add    %al,(%eax)
   12b38:	12 fc                	adc    %ah,%bh
   12b3a:	00 00                	add    %al,(%eax)
   12b3c:	22 fc                	and    %ah,%bh
   12b3e:	00 00                	add    %al,(%eax)
   12b40:	6c                   	insb   (%dx),%es:(%edi)
   12b41:	69 62 2f 73 79 73 6c 	imul   $0x6c737973,0x2f(%edx),%esp
   12b48:	6f                   	outsl  %ds:(%esi),(%dx)
   12b49:	67 2e 63 00          	arpl   %ax,%cs:(%bx,%si)
   12b4d:	73 74                	jae    12bc3 <LOGDISKBUF_SIZE+0x1fc3>
   12b4f:	72 6c                	jb     12bbd <LOGDISKBUF_SIZE+0x1fbd>
   12b51:	65 6e                	outsb  %gs:(%esi),(%dx)
   12b53:	28 62 75             	sub    %ah,0x75(%edx)
   12b56:	66 29 20             	sub    %sp,(%eax)
   12b59:	3d 3d 20 69 00       	cmp    $0x69203d,%eax
   12b5e:	70 72                	jo     12bd2 <LOGDISKBUF_SIZE+0x1fd2>
   12b60:	69 6e 74 66 2e 63 00 	imul   $0x632e66,0x74(%esi),%ebp
   12b67:	63 20                	arpl   %sp,(%eax)
   12b69:	3d 3d 20 69 00       	cmp    $0x69203d,%eax
   12b6e:	00 00                	add    %al,(%eax)
   12b70:	6d                   	insl   (%dx),%es:(%edi)
   12b71:	69 73 63 2e 63 00 00 	imul   $0x632e,0x63(%ebx),%esi
   12b78:	28 66 75             	sub    %ah,0x75(%esi)
   12b7b:	6e                   	outsb  %ds:(%esi),(%dx)
   12b7c:	63 74 69 6f          	arpl   %si,0x6f(%ecx,%ebp,2)
   12b80:	6e                   	outsb  %ds:(%esi),(%dx)
   12b81:	20 3d 3d 20 42 4f    	and    %bh,0x4f42203d
   12b87:	54                   	push   %esp
   12b88:	48                   	dec    %eax
   12b89:	29 20                	sub    %esp,(%eax)
   12b8b:	7c 7c                	jl     12c09 <LOGDISKBUF_SIZE+0x2009>
   12b8d:	20 28                	and    %ch,(%eax)
   12b8f:	66                   	data16
   12b90:	75 6e                	jne    12c00 <LOGDISKBUF_SIZE+0x2000>
   12b92:	63 74 69 6f          	arpl   %si,0x6f(%ecx,%ebp,2)
   12b96:	6e                   	outsb  %ds:(%esi),(%dx)
   12b97:	20 3d 3d 20 53 45    	and    %bh,0x4553203d
   12b9d:	4e                   	dec    %esi
   12b9e:	44                   	inc    %esp
   12b9f:	29 20                	sub    %esp,(%eax)
   12ba1:	7c 7c                	jl     12c1f <LOGDISKBUF_SIZE+0x201f>
   12ba3:	20 28                	and    %ch,(%eax)
   12ba5:	66                   	data16
   12ba6:	75 6e                	jne    12c16 <LOGDISKBUF_SIZE+0x2016>
   12ba8:	63 74 69 6f          	arpl   %si,0x6f(%ecx,%ebp,2)
   12bac:	6e                   	outsb  %ds:(%esi),(%dx)
   12bad:	20 3d 3d 20 52 45    	and    %bh,0x4552203d
   12bb3:	43                   	inc    %ebx
   12bb4:	45                   	inc    %ebp
   12bb5:	49                   	dec    %ecx
   12bb6:	56                   	push   %esi
   12bb7:	45                   	inc    %ebp
   12bb8:	29 00                	sub    %eax,(%eax)
   12bba:	0a 73 70             	or     0x70(%ebx),%dh
   12bbd:	69 6e 6e 69 6e 67 20 	imul   $0x20676e69,0x6e(%esi),%ebp
   12bc4:	69 6e 20 25 73 20 2e 	imul   $0x2e207325,0x20(%esi),%ebp
   12bcb:	2e 2e 0a 00          	cs or  %cs:(%eax),%al
   12bcf:	6f                   	outsl  %ds:(%esi),(%dx)
   12bd0:	70 65                	jo     12c37 <LOGDISKBUF_SIZE+0x2037>
   12bd2:	6e                   	outsb  %ds:(%esi),(%dx)
   12bd3:	2e 63 00             	arpl   %ax,%cs:(%eax)
   12bd6:	6d                   	insl   (%dx),%es:(%edi)
   12bd7:	73 67                	jae    12c40 <LOGDISKBUF_SIZE+0x2040>
   12bd9:	2e 74 79             	je,pn  12c55 <LOGDISKBUF_SIZE+0x2055>
   12bdc:	70 65                	jo     12c43 <LOGDISKBUF_SIZE+0x2043>
   12bde:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12be4:	53                   	push   %ebx
   12be5:	43                   	inc    %ebx
   12be6:	41                   	inc    %ecx
   12be7:	4c                   	dec    %esp
   12be8:	4c                   	dec    %esp
   12be9:	5f                   	pop    %edi
   12bea:	52                   	push   %edx
   12beb:	45                   	inc    %ebp
   12bec:	54                   	push   %esp
   12bed:	00 67 65             	add    %ah,0x65(%edi)
   12bf0:	74 70                	je     12c62 <LOGDISKBUF_SIZE+0x2062>
   12bf2:	69 64 2e 63 00 6d 73 	imul   $0x67736d00,0x63(%esi,%ebp,1),%esp
   12bf9:	67 
   12bfa:	2e 74 79             	je,pn  12c76 <LOGDISKBUF_SIZE+0x2076>
   12bfd:	70 65                	jo     12c64 <LOGDISKBUF_SIZE+0x2064>
   12bff:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12c05:	53                   	push   %ebx
   12c06:	43                   	inc    %ebx
   12c07:	41                   	inc    %ecx
   12c08:	4c                   	dec    %esp
   12c09:	4c                   	dec    %esp
   12c0a:	5f                   	pop    %edi
   12c0b:	52                   	push   %edx
   12c0c:	45                   	inc    %ebp
   12c0d:	54                   	push   %esp
   12c0e:	00 73 74             	add    %dh,0x74(%ebx)
   12c11:	61                   	popa   
   12c12:	74 2e                	je     12c42 <LOGDISKBUF_SIZE+0x2042>
   12c14:	63 00                	arpl   %ax,(%eax)
   12c16:	6d                   	insl   (%dx),%es:(%edi)
   12c17:	73 67                	jae    12c80 <LOGDISKBUF_SIZE+0x2080>
   12c19:	2e 74 79             	je,pn  12c95 <LOGDISKBUF_SIZE+0x2095>
   12c1c:	70 65                	jo     12c83 <LOGDISKBUF_SIZE+0x2083>
   12c1e:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12c24:	53                   	push   %ebx
   12c25:	43                   	inc    %ebx
   12c26:	41                   	inc    %ecx
   12c27:	4c                   	dec    %esp
   12c28:	4c                   	dec    %esp
   12c29:	5f                   	pop    %edi
   12c2a:	52                   	push   %edx
   12c2b:	45                   	inc    %ebp
   12c2c:	54                   	push   %esp
   12c2d:	00 66 6f             	add    %ah,0x6f(%esi)
   12c30:	72 6b                	jb     12c9d <LOGDISKBUF_SIZE+0x209d>
   12c32:	2e 63 00             	arpl   %ax,%cs:(%eax)
   12c35:	6d                   	insl   (%dx),%es:(%edi)
   12c36:	73 67                	jae    12c9f <LOGDISKBUF_SIZE+0x209f>
   12c38:	2e 74 79             	je,pn  12cb4 <LOGDISKBUF_SIZE+0x20b4>
   12c3b:	70 65                	jo     12ca2 <LOGDISKBUF_SIZE+0x20a2>
   12c3d:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12c43:	53                   	push   %ebx
   12c44:	43                   	inc    %ebx
   12c45:	41                   	inc    %ecx
   12c46:	4c                   	dec    %esp
   12c47:	4c                   	dec    %esp
   12c48:	5f                   	pop    %edi
   12c49:	52                   	push   %edx
   12c4a:	45                   	inc    %ebp
   12c4b:	54                   	push   %esp
   12c4c:	00 6d 73             	add    %ch,0x73(%ebp)
   12c4f:	67                   	addr16
   12c50:	2e                   	cs
   12c51:	52                   	push   %edx
   12c52:	45                   	inc    %ebp
   12c53:	54                   	push   %esp
   12c54:	56                   	push   %esi
   12c55:	41                   	inc    %ecx
   12c56:	4c                   	dec    %esp
   12c57:	20 3d 3d 20 30 00    	and    %bh,0x30203d
   12c5d:	00 00                	add    %al,(%eax)
   12c5f:	00 65 78             	add    %ah,0x78(%ebp)
   12c62:	65 63 2e             	arpl   %bp,%gs:(%esi)
   12c65:	63 00                	arpl   %ax,(%eax)
   12c67:	6d                   	insl   (%dx),%es:(%edi)
   12c68:	73 67                	jae    12cd1 <LOGDISKBUF_SIZE+0x20d1>
   12c6a:	2e 74 79             	je,pn  12ce6 <LOGDISKBUF_SIZE+0x20e6>
   12c6d:	70 65                	jo     12cd4 <LOGDISKBUF_SIZE+0x20d4>
   12c6f:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12c75:	53                   	push   %ebx
   12c76:	43                   	inc    %ebx
   12c77:	41                   	inc    %ecx
   12c78:	4c                   	dec    %esp
   12c79:	4c                   	dec    %esp
   12c7a:	5f                   	pop    %edi
   12c7b:	52                   	push   %edx
   12c7c:	45                   	inc    %ebp
   12c7d:	54                   	push   %esp
   12c7e:	00 00                	add    %al,(%eax)
   12c80:	73 74                	jae    12cf6 <LOGDISKBUF_SIZE+0x20f6>
   12c82:	61                   	popa   
   12c83:	63 6b 5f             	arpl   %bp,0x5f(%ebx)
   12c86:	6c                   	insb   (%dx),%es:(%edi)
   12c87:	65 6e                	outsb  %gs:(%esi),(%dx)
   12c89:	20 2b                	and    %ch,(%ebx)
   12c8b:	20 32                	and    %dh,(%edx)
   12c8d:	20 2a                	and    %ch,(%edx)
   12c8f:	20 73 69             	and    %dh,0x69(%ebx)
   12c92:	7a 65                	jp     12cf9 <LOGDISKBUF_SIZE+0x20f9>
   12c94:	6f                   	outsl  %ds:(%esi),(%dx)
   12c95:	66                   	data16
   12c96:	28 63 68             	sub    %ah,0x68(%ebx)
   12c99:	61                   	popa   
   12c9a:	72 2a                	jb     12cc6 <LOGDISKBUF_SIZE+0x20c6>
   12c9c:	29 20                	sub    %esp,(%eax)
   12c9e:	3c 20                	cmp    $0x20,%al
   12ca0:	50                   	push   %eax
   12ca1:	52                   	push   %edx
   12ca2:	4f                   	dec    %edi
   12ca3:	43                   	inc    %ebx
   12ca4:	5f                   	pop    %edi
   12ca5:	4f                   	dec    %edi
   12ca6:	52                   	push   %edx
   12ca7:	49                   	dec    %ecx
   12ca8:	47                   	inc    %edi
   12ca9:	49                   	dec    %ecx
   12caa:	4e                   	dec    %esi
   12cab:	5f                   	pop    %edi
   12cac:	53                   	push   %ebx
   12cad:	54                   	push   %esp
   12cae:	41                   	inc    %ecx
   12caf:	43                   	inc    %ebx
   12cb0:	4b                   	dec    %ebx
   12cb1:	00 00                	add    %al,(%eax)
   12cb3:	00 73 74             	add    %dh,0x74(%ebx)
   12cb6:	61                   	popa   
   12cb7:	63 6b 5f             	arpl   %bp,0x5f(%ebx)
   12cba:	6c                   	insb   (%dx),%es:(%edi)
   12cbb:	65 6e                	outsb  %gs:(%esi),(%dx)
   12cbd:	20 2b                	and    %ch,(%ebx)
   12cbf:	20 73 74             	and    %dh,0x74(%ebx)
   12cc2:	72 6c                	jb     12d30 <LOGDISKBUF_SIZE+0x2130>
   12cc4:	65 6e                	outsb  %gs:(%esi),(%dx)
   12cc6:	28 2a                	sub    %ch,(%edx)
   12cc8:	70 29                	jo     12cf3 <LOGDISKBUF_SIZE+0x20f3>
   12cca:	20 2b                	and    %ch,(%ebx)
   12ccc:	20 31                	and    %dh,(%ecx)
   12cce:	20 3c 20             	and    %bh,(%eax,%eiz,1)
   12cd1:	50                   	push   %eax
   12cd2:	52                   	push   %edx
   12cd3:	4f                   	dec    %edi
   12cd4:	43                   	inc    %ebx
   12cd5:	5f                   	pop    %edi
   12cd6:	4f                   	dec    %edi
   12cd7:	52                   	push   %edx
   12cd8:	49                   	dec    %ecx
   12cd9:	47                   	inc    %edi
   12cda:	49                   	dec    %ecx
   12cdb:	4e                   	dec    %esi
   12cdc:	5f                   	pop    %edi
   12cdd:	53                   	push   %ebx
   12cde:	54                   	push   %esp
   12cdf:	41                   	inc    %ecx
   12ce0:	43                   	inc    %ebx
   12ce1:	4b                   	dec    %ebx
   12ce2:	00 75 6e             	add    %dh,0x6e(%ebp)
   12ce5:	61                   	popa   
   12ce6:	6d                   	insl   (%dx),%es:(%edi)
   12ce7:	65 2e 63 00          	gs arpl %ax,%cs:%gs:(%eax)
   12ceb:	6d                   	insl   (%dx),%es:(%edi)
   12cec:	73 67                	jae    12d55 <LOGDISKBUF_SIZE+0x2155>
   12cee:	2e 74 79             	je,pn  12d6a <LOGDISKBUF_SIZE+0x216a>
   12cf1:	70 65                	jo     12d58 <LOGDISKBUF_SIZE+0x2158>
   12cf3:	20 3d 3d 20 53 59    	and    %bh,0x5953203d
   12cf9:	53                   	push   %ebx
   12cfa:	43                   	inc    %ebx
   12cfb:	41                   	inc    %ecx
   12cfc:	4c                   	dec    %esp
   12cfd:	4c                   	dec    %esp
   12cfe:	5f                   	pop    %edi
   12cff:	52                   	push   %edx
   12d00:	45                   	inc    %ebp
   12d01:	54                   	push   %esp
	...

Disassembly of section .data:

00013000 <clock_int_msg>:
   13000:	5e                   	pop    %esi
	...

00013020 <ROOT_DEV>:
   13020:	20 03                	and    %al,(%ebx)
	...

00013040 <task_table>:
   13040:	84 f1                	test   %dh,%cl
   13042:	00 00                	add    %al,(%eax)
   13044:	00 40 00             	add    %al,0x0(%eax)
   13047:	00 54 54 59          	add    %dl,0x59(%esp,%edx,2)
	...
   13067:	00 d0                	add    %dl,%al
   13069:	4b                   	dec    %ebx
   1306a:	00 00                	add    %al,(%eax)
   1306c:	00 40 00             	add    %al,0x0(%eax)
   1306f:	00 53 59             	add    %dl,0x59(%ebx)
   13072:	53                   	push   %ebx
	...
   1308f:	00 2c c7             	add    %ch,(%edi,%eax,8)
   13092:	00 00                	add    %al,(%eax)
   13094:	00 40 00             	add    %al,0x0(%eax)
   13097:	00 48 44             	add    %cl,0x44(%eax)
	...
   130b6:	00 00                	add    %al,(%eax)
   130b8:	80 55 00 00          	adcb   $0x0,0x0(%ebp)
   130bc:	00 40 00             	add    %al,0x0(%eax)
   130bf:	00 46 53             	add    %al,0x53(%esi)
	...
   130de:	00 00                	add    %al,(%eax)
   130e0:	60                   	pusha  
   130e1:	b4 00                	mov    $0x0,%ah
   130e3:	00 00                	add    %al,(%eax)
   130e5:	40                   	inc    %eax
   130e6:	00 00                	add    %al,(%eax)
   130e8:	4d                   	dec    %ebp
   130e9:	4d                   	dec    %ebp
	...
   13106:	00 00                	add    %al,(%eax)
   13108:	c8 d5 00 00          	enter  $0xd5,$0x0
   1310c:	00 40 00             	add    %al,0x0(%eax)
   1310f:	00 52 44             	add    %dl,0x44(%edx)
	...
   1312e:	00 00                	add    %al,(%eax)
   13130:	f0 c4 00             	lock les (%eax),%eax
   13133:	00 00                	add    %al,(%eax)
   13135:	40                   	inc    %eax
   13136:	00 00                	add    %al,(%eax)
   13138:	46                   	inc    %esi
   13139:	44                   	inc    %esp
	...
   13156:	00 00                	add    %al,(%eax)
   13158:	68 da 00 00 00       	push   $0xda
   1315d:	40                   	inc    %eax
   1315e:	00 00                	add    %al,(%eax)
   13160:	53                   	push   %ebx
   13161:	43                   	inc    %ebx
   13162:	53                   	push   %ebx
   13163:	49                   	dec    %ecx
	...
   13180:	9c                   	pushf  
   13181:	fb                   	sti    
   13182:	00 00                	add    %al,(%eax)
   13184:	00 40 00             	add    %al,0x0(%eax)
   13187:	00 50 43             	add    %dl,0x43(%eax)
   1318a:	49                   	dec    %ecx
	...
   131a7:	00 94 fb 00 00 00 40 	add    %dl,0x40000000(%ebx,%edi,8)
   131ae:	00 00                	add    %al,(%eax)
   131b0:	49                   	dec    %ecx
   131b1:	4e                   	dec    %esi
   131b2:	45                   	inc    %ebp
   131b3:	54                   	push   %esp
	...

000131e0 <user_proc_table>:
   131e0:	84 1d 00 00 00 40    	test   %bl,0x40000000
   131e6:	00 00                	add    %al,(%eax)
   131e8:	49                   	dec    %ecx
   131e9:	4e                   	dec    %esi
   131ea:	49                   	dec    %ecx
   131eb:	54                   	push   %esp
	...
   13208:	28 1f                	sub    %bl,(%edi)
   1320a:	00 00                	add    %al,(%eax)
   1320c:	00 40 00             	add    %al,0x0(%eax)
   1320f:	00 54 65 73          	add    %dl,0x73(%ebp,%eiz,2)
   13213:	74 41                	je     13256 <user_proc_table+0x76>
	...
   1322d:	00 00                	add    %al,(%eax)
   1322f:	00 2d 1f 00 00 00    	add    %ch,0x1f
   13235:	40                   	inc    %eax
   13236:	00 00                	add    %al,(%eax)
   13238:	54                   	push   %esp
   13239:	65                   	gs
   1323a:	73 74                	jae    132b0 <thisname+0x10>
   1323c:	42                   	inc    %edx
	...
   13255:	00 00                	add    %al,(%eax)
   13257:	00 32                	add    %dh,(%edx)
   13259:	1f                   	pop    %ds
   1325a:	00 00                	add    %al,(%eax)
   1325c:	00 40 00             	add    %al,0x0(%eax)
   1325f:	00 54 65 73          	add    %dl,0x73(%ebp,%eiz,2)
   13263:	74 43                	je     132a8 <thisname+0x8>
	...

00013280 <sys_call_table>:
   13280:	8a f8                	mov    %al,%bh
   13282:	00 00                	add    %al,(%eax)
   13284:	33 33                	xor    (%ebx),%esi
   13286:	00 00                	add    %al,(%eax)
   13288:	50                   	push   %eax
   13289:	54                   	push   %esp
	...

000132a0 <thisname>:
   132a0:	4c                   	dec    %esp
   132a1:	79 6f                	jns    13312 <floppy_types+0x12>
   132a3:	73 00                	jae    132a5 <thisname+0x5>
   132a5:	00 00                	add    %al,(%eax)
   132a7:	00 00                	add    %al,(%eax)
   132a9:	6c                   	insb   (%dx),%es:(%edi)
   132aa:	6f                   	outsl  %ds:(%esi),(%dx)
   132ab:	63 61 6c             	arpl   %sp,0x6c(%ecx)
   132ae:	68 6f 73 74 00       	push   $0x74736f
	...
   132bb:	30 2e                	xor    %ch,(%esi)
   132bd:	32 2e                	xor    (%esi),%ch
   132bf:	36 2e 33 00          	ss xor %cs:%ss:(%eax),%eax
   132c3:	00 69 33             	add    %ch,0x33(%ecx)
   132c6:	38 36                	cmp    %dh,(%esi)
   132c8:	00 00                	add    %al,(%eax)
   132ca:	00 00                	add    %al,(%eax)
	...

000132cd <dd_map>:
   132cd:	ec                   	in     (%dx),%al
   132ce:	ff                   	(bad)  
   132cf:	ff                   	(bad)  
   132d0:	ff 05 00 00 00 06    	incl   0x6000000
   132d6:	00 00                	add    %al,(%eax)
   132d8:	00 02                	add    %al,(%edx)
   132da:	00 00                	add    %al,(%eax)
   132dc:	00 00                	add    %al,(%eax)
   132de:	00 00                	add    %al,(%eax)
   132e0:	00 07                	add    %al,(%edi)
   132e2:	00 00                	add    %al,(%eax)
   132e4:	00 00                	add    %al,(%eax)
	...

000132e8 <fsbuf>:
   132e8:	00 00                	add    %al,(%eax)
   132ea:	60                   	pusha  
	...

000132ec <mmbuf>:
   132ec:	00 00                	add    %al,(%eax)
   132ee:	70 00                	jo     132f0 <logbuf>

000132f0 <logbuf>:
   132f0:	00 00                	add    %al,(%eax)
   132f2:	80 00 00             	addb   $0x0,(%eax)

000132f4 <logdiskbuf>:
   132f4:	00 00                	add    %al,(%eax)
   132f6:	90                   	nop
	...

000132f8 <dot1>:
   132f8:	2e 00 2e             	add    %ch,%cs:(%esi)

000132fa <dot2>:
   132fa:	2e 2e 00 00          	cs add %al,%cs:(%eax)
	...

00013300 <floppy_types>:
   13300:	d0 02                	rolb   (%edx)
   13302:	00 00                	add    %al,(%eax)
   13304:	09 00                	or     %eax,(%eax)
   13306:	00 00                	add    %al,(%eax)
   13308:	02 00                	add    (%eax),%al
   1330a:	00 00                	add    %al,(%eax)
   1330c:	28 00                	sub    %al,(%eax)
   1330e:	00 00                	add    %al,(%eax)
   13310:	00 00                	add    %al,(%eax)
   13312:	00 00                	add    %al,(%eax)
   13314:	2a 02                	sub    (%edx),%al
   13316:	df 50 28             	fist   0x28(%eax)
   13319:	25 01 00 d0 02       	and    $0x2d00001,%eax
   1331e:	00 00                	add    %al,(%eax)
   13320:	09 00                	or     %eax,(%eax)
   13322:	00 00                	add    %al,(%eax)
   13324:	02 00                	add    (%eax),%al
   13326:	00 00                	add    %al,(%eax)
   13328:	28 00                	sub    %al,(%eax)
   1332a:	00 00                	add    %al,(%eax)
   1332c:	00 00                	add    %al,(%eax)
   1332e:	00 00                	add    %al,(%eax)
   13330:	2a 02                	sub    (%edx),%al
   13332:	df 50 28             	fist   0x28(%eax)
   13335:	25 01 00 60 09       	and    $0x9600001,%eax
   1333a:	00 00                	add    %al,(%eax)
   1333c:	0f 00 00             	sldt   (%eax)
   1333f:	00 02                	add    %al,(%edx)
   13341:	00 00                	add    %al,(%eax)
   13343:	00 50 00             	add    %dl,0x0(%eax)
   13346:	00 00                	add    %al,(%eax)
   13348:	00 00                	add    %al,(%eax)
   1334a:	00 00                	add    %al,(%eax)
   1334c:	1b 00                	sbb    (%eax),%eax
   1334e:	df 54 30 25          	fist   0x25(%eax,%esi,1)
   13352:	01 00                	add    %eax,(%eax)
   13354:	d0 02                	rolb   (%edx)
   13356:	00 00                	add    %al,(%eax)
   13358:	09 00                	or     %eax,(%eax)
   1335a:	00 00                	add    %al,(%eax)
   1335c:	02 00                	add    (%eax),%al
   1335e:	00 00                	add    %al,(%eax)
   13360:	28 00                	sub    %al,(%eax)
   13362:	00 00                	add    %al,(%eax)
   13364:	01 00                	add    %eax,(%eax)
   13366:	00 00                	add    %al,(%eax)
   13368:	23 01                	and    (%ecx),%eax
   1336a:	df 50 35             	fist   0x35(%eax)
   1336d:	25 01 00 a0 05       	and    $0x5a00001,%eax
   13372:	00 00                	add    %al,(%eax)
   13374:	09 00                	or     %eax,(%eax)
   13376:	00 00                	add    %al,(%eax)
   13378:	02 00                	add    (%eax),%al
   1337a:	00 00                	add    %al,(%eax)
   1337c:	50                   	push   %eax
   1337d:	00 00                	add    %al,(%eax)
   1337f:	00 00                	add    %al,(%eax)
   13381:	00 00                	add    %al,(%eax)
   13383:	00 2a                	add    %ch,(%edx)
   13385:	02 df                	add    %bh,%bl
   13387:	50                   	push   %eax
   13388:	3d 25 01 00 a0       	cmp    $0xa0000125,%eax
   1338d:	05 00 00 09 00       	add    $0x90000,%eax
   13392:	00 00                	add    %al,(%eax)
   13394:	02 00                	add    (%eax),%al
   13396:	00 00                	add    %al,(%eax)
   13398:	50                   	push   %eax
   13399:	00 00                	add    %al,(%eax)
   1339b:	00 00                	add    %al,(%eax)
   1339d:	00 00                	add    %al,(%eax)
   1339f:	00 2a                	add    %ch,(%edx)
   133a1:	02 df                	add    %bh,%bl
   133a3:	50                   	push   %eax
   133a4:	3d 25 01 00 40       	cmp    $0x40000125,%eax
   133a9:	0b 00                	or     (%eax),%eax
   133ab:	00 12                	add    %dl,(%edx)
   133ad:	00 00                	add    %al,(%eax)
   133af:	00 02                	add    %al,(%edx)
   133b1:	00 00                	add    %al,(%eax)
   133b3:	00 50 00             	add    %dl,0x0(%eax)
   133b6:	00 00                	add    %al,(%eax)
   133b8:	00 00                	add    %al,(%eax)
   133ba:	00 00                	add    %al,(%eax)
   133bc:	1b 00                	sbb    (%eax),%eax
   133be:	cf                   	iret   
   133bf:	6c                   	insb   (%dx),%es:(%edi)
   133c0:	42                   	inc    %edx
   133c1:	25 01 00 a0 05       	and    $0x5a00001,%eax
   133c6:	00 00                	add    %al,(%eax)
   133c8:	09 00                	or     %eax,(%eax)
   133ca:	00 00                	add    %al,(%eax)
   133cc:	02 00                	add    (%eax),%al
   133ce:	00 00                	add    %al,(%eax)
   133d0:	50                   	push   %eax
   133d1:	00 00                	add    %al,(%eax)
   133d3:	00 00                	add    %al,(%eax)
   133d5:	00 00                	add    %al,(%eax)
   133d7:	00 2a                	add    %ch,(%edx)
   133d9:	02 df                	add    %bh,%bl
   133db:	50                   	push   %eax
   133dc:	48                   	dec    %eax
   133dd:	25 01 00 00 05       	and    $0x5000001,%eax

000133e0 <floppy_buffer>:
   133e0:	00 05 00 00 33 c9    	add    %al,0xc9330000

000133e4 <hd_driver>:
   133e4:	33 c9                	xor    %ecx,%ecx
   133e6:	00 00                	add    %al,(%eax)
   133e8:	f7                   	(bad)  
   133e9:	c9                   	leave  
   133ea:	00 00                	add    %al,(%eax)
   133ec:	8c ca                	mov    %cs,%edx
   133ee:	00 00                	add    %al,(%eax)
   133f0:	a2 cd 00 00 00       	mov    %al,0xcd
	...

00013400 <keymap>:
	...
   1340c:	01 01                	add    %eax,(%ecx)
   1340e:	00 00                	add    %al,(%eax)
   13410:	01 01                	add    %eax,(%ecx)
   13412:	00 00                	add    %al,(%eax)
   13414:	00 00                	add    %al,(%eax)
   13416:	00 00                	add    %al,(%eax)
   13418:	31 00                	xor    %eax,(%eax)
   1341a:	00 00                	add    %al,(%eax)
   1341c:	21 00                	and    %eax,(%eax)
   1341e:	00 00                	add    %al,(%eax)
   13420:	00 00                	add    %al,(%eax)
   13422:	00 00                	add    %al,(%eax)
   13424:	32 00                	xor    (%eax),%al
   13426:	00 00                	add    %al,(%eax)
   13428:	40                   	inc    %eax
   13429:	00 00                	add    %al,(%eax)
   1342b:	00 00                	add    %al,(%eax)
   1342d:	00 00                	add    %al,(%eax)
   1342f:	00 33                	add    %dh,(%ebx)
   13431:	00 00                	add    %al,(%eax)
   13433:	00 23                	add    %ah,(%ebx)
   13435:	00 00                	add    %al,(%eax)
   13437:	00 00                	add    %al,(%eax)
   13439:	00 00                	add    %al,(%eax)
   1343b:	00 34 00             	add    %dh,(%eax,%eax,1)
   1343e:	00 00                	add    %al,(%eax)
   13440:	24 00                	and    $0x0,%al
   13442:	00 00                	add    %al,(%eax)
   13444:	00 00                	add    %al,(%eax)
   13446:	00 00                	add    %al,(%eax)
   13448:	35 00 00 00 25       	xor    $0x25000000,%eax
   1344d:	00 00                	add    %al,(%eax)
   1344f:	00 00                	add    %al,(%eax)
   13451:	00 00                	add    %al,(%eax)
   13453:	00 36                	add    %dh,(%esi)
   13455:	00 00                	add    %al,(%eax)
   13457:	00 5e 00             	add    %bl,0x0(%esi)
   1345a:	00 00                	add    %al,(%eax)
   1345c:	00 00                	add    %al,(%eax)
   1345e:	00 00                	add    %al,(%eax)
   13460:	37                   	aaa    
   13461:	00 00                	add    %al,(%eax)
   13463:	00 26                	add    %ah,(%esi)
   13465:	00 00                	add    %al,(%eax)
   13467:	00 00                	add    %al,(%eax)
   13469:	00 00                	add    %al,(%eax)
   1346b:	00 38                	add    %bh,(%eax)
   1346d:	00 00                	add    %al,(%eax)
   1346f:	00 2a                	add    %ch,(%edx)
   13471:	00 00                	add    %al,(%eax)
   13473:	00 00                	add    %al,(%eax)
   13475:	00 00                	add    %al,(%eax)
   13477:	00 39                	add    %bh,(%ecx)
   13479:	00 00                	add    %al,(%eax)
   1347b:	00 28                	add    %ch,(%eax)
   1347d:	00 00                	add    %al,(%eax)
   1347f:	00 00                	add    %al,(%eax)
   13481:	00 00                	add    %al,(%eax)
   13483:	00 30                	add    %dh,(%eax)
   13485:	00 00                	add    %al,(%eax)
   13487:	00 29                	add    %ch,(%ecx)
   13489:	00 00                	add    %al,(%eax)
   1348b:	00 00                	add    %al,(%eax)
   1348d:	00 00                	add    %al,(%eax)
   1348f:	00 2d 00 00 00 5f    	add    %ch,0x5f000000
   13495:	00 00                	add    %al,(%eax)
   13497:	00 00                	add    %al,(%eax)
   13499:	00 00                	add    %al,(%eax)
   1349b:	00 3d 00 00 00 2b    	add    %bh,0x2b000000
   134a1:	00 00                	add    %al,(%eax)
   134a3:	00 00                	add    %al,(%eax)
   134a5:	00 00                	add    %al,(%eax)
   134a7:	00 04 01             	add    %al,(%ecx,%eax,1)
   134aa:	00 00                	add    %al,(%eax)
   134ac:	04 01                	add    $0x1,%al
   134ae:	00 00                	add    %al,(%eax)
   134b0:	00 00                	add    %al,(%eax)
   134b2:	00 00                	add    %al,(%eax)
   134b4:	02 01                	add    (%ecx),%al
   134b6:	00 00                	add    %al,(%eax)
   134b8:	02 01                	add    (%ecx),%al
   134ba:	00 00                	add    %al,(%eax)
   134bc:	00 00                	add    %al,(%eax)
   134be:	00 00                	add    %al,(%eax)
   134c0:	71 00                	jno    134c2 <keymap+0xc2>
   134c2:	00 00                	add    %al,(%eax)
   134c4:	51                   	push   %ecx
   134c5:	00 00                	add    %al,(%eax)
   134c7:	00 00                	add    %al,(%eax)
   134c9:	00 00                	add    %al,(%eax)
   134cb:	00 77 00             	add    %dh,0x0(%edi)
   134ce:	00 00                	add    %al,(%eax)
   134d0:	57                   	push   %edi
   134d1:	00 00                	add    %al,(%eax)
   134d3:	00 00                	add    %al,(%eax)
   134d5:	00 00                	add    %al,(%eax)
   134d7:	00 65 00             	add    %ah,0x0(%ebp)
   134da:	00 00                	add    %al,(%eax)
   134dc:	45                   	inc    %ebp
   134dd:	00 00                	add    %al,(%eax)
   134df:	00 00                	add    %al,(%eax)
   134e1:	00 00                	add    %al,(%eax)
   134e3:	00 72 00             	add    %dh,0x0(%edx)
   134e6:	00 00                	add    %al,(%eax)
   134e8:	52                   	push   %edx
   134e9:	00 00                	add    %al,(%eax)
   134eb:	00 00                	add    %al,(%eax)
   134ed:	00 00                	add    %al,(%eax)
   134ef:	00 74 00 00          	add    %dh,0x0(%eax,%eax,1)
   134f3:	00 54 00 00          	add    %dl,0x0(%eax,%eax,1)
   134f7:	00 00                	add    %al,(%eax)
   134f9:	00 00                	add    %al,(%eax)
   134fb:	00 79 00             	add    %bh,0x0(%ecx)
   134fe:	00 00                	add    %al,(%eax)
   13500:	59                   	pop    %ecx
   13501:	00 00                	add    %al,(%eax)
   13503:	00 00                	add    %al,(%eax)
   13505:	00 00                	add    %al,(%eax)
   13507:	00 75 00             	add    %dh,0x0(%ebp)
   1350a:	00 00                	add    %al,(%eax)
   1350c:	55                   	push   %ebp
   1350d:	00 00                	add    %al,(%eax)
   1350f:	00 00                	add    %al,(%eax)
   13511:	00 00                	add    %al,(%eax)
   13513:	00 69 00             	add    %ch,0x0(%ecx)
   13516:	00 00                	add    %al,(%eax)
   13518:	49                   	dec    %ecx
   13519:	00 00                	add    %al,(%eax)
   1351b:	00 00                	add    %al,(%eax)
   1351d:	00 00                	add    %al,(%eax)
   1351f:	00 6f 00             	add    %ch,0x0(%edi)
   13522:	00 00                	add    %al,(%eax)
   13524:	4f                   	dec    %edi
   13525:	00 00                	add    %al,(%eax)
   13527:	00 00                	add    %al,(%eax)
   13529:	00 00                	add    %al,(%eax)
   1352b:	00 70 00             	add    %dh,0x0(%eax)
   1352e:	00 00                	add    %al,(%eax)
   13530:	50                   	push   %eax
   13531:	00 00                	add    %al,(%eax)
   13533:	00 00                	add    %al,(%eax)
   13535:	00 00                	add    %al,(%eax)
   13537:	00 5b 00             	add    %bl,0x0(%ebx)
   1353a:	00 00                	add    %al,(%eax)
   1353c:	7b 00                	jnp    1353e <keymap+0x13e>
   1353e:	00 00                	add    %al,(%eax)
   13540:	00 00                	add    %al,(%eax)
   13542:	00 00                	add    %al,(%eax)
   13544:	5d                   	pop    %ebp
   13545:	00 00                	add    %al,(%eax)
   13547:	00 7d 00             	add    %bh,0x0(%ebp)
   1354a:	00 00                	add    %al,(%eax)
   1354c:	00 00                	add    %al,(%eax)
   1354e:	00 00                	add    %al,(%eax)
   13550:	03 01                	add    (%ecx),%eax
   13552:	00 00                	add    %al,(%eax)
   13554:	03 01                	add    (%ecx),%eax
   13556:	00 00                	add    %al,(%eax)
   13558:	30 01                	xor    %al,(%ecx)
   1355a:	00 00                	add    %al,(%eax)
   1355c:	0a 01                	or     (%ecx),%al
   1355e:	00 00                	add    %al,(%eax)
   13560:	0a 01                	or     (%ecx),%al
   13562:	00 00                	add    %al,(%eax)
   13564:	0b 01                	or     (%ecx),%eax
   13566:	00 00                	add    %al,(%eax)
   13568:	61                   	popa   
   13569:	00 00                	add    %al,(%eax)
   1356b:	00 41 00             	add    %al,0x0(%ecx)
   1356e:	00 00                	add    %al,(%eax)
   13570:	00 00                	add    %al,(%eax)
   13572:	00 00                	add    %al,(%eax)
   13574:	73 00                	jae    13576 <keymap+0x176>
   13576:	00 00                	add    %al,(%eax)
   13578:	53                   	push   %ebx
   13579:	00 00                	add    %al,(%eax)
   1357b:	00 00                	add    %al,(%eax)
   1357d:	00 00                	add    %al,(%eax)
   1357f:	00 64 00 00          	add    %ah,0x0(%eax,%eax,1)
   13583:	00 44 00 00          	add    %al,0x0(%eax,%eax,1)
   13587:	00 00                	add    %al,(%eax)
   13589:	00 00                	add    %al,(%eax)
   1358b:	00 66 00             	add    %ah,0x0(%esi)
   1358e:	00 00                	add    %al,(%eax)
   13590:	46                   	inc    %esi
   13591:	00 00                	add    %al,(%eax)
   13593:	00 00                	add    %al,(%eax)
   13595:	00 00                	add    %al,(%eax)
   13597:	00 67 00             	add    %ah,0x0(%edi)
   1359a:	00 00                	add    %al,(%eax)
   1359c:	47                   	inc    %edi
   1359d:	00 00                	add    %al,(%eax)
   1359f:	00 00                	add    %al,(%eax)
   135a1:	00 00                	add    %al,(%eax)
   135a3:	00 68 00             	add    %ch,0x0(%eax)
   135a6:	00 00                	add    %al,(%eax)
   135a8:	48                   	dec    %eax
   135a9:	00 00                	add    %al,(%eax)
   135ab:	00 00                	add    %al,(%eax)
   135ad:	00 00                	add    %al,(%eax)
   135af:	00 6a 00             	add    %ch,0x0(%edx)
   135b2:	00 00                	add    %al,(%eax)
   135b4:	4a                   	dec    %edx
   135b5:	00 00                	add    %al,(%eax)
   135b7:	00 00                	add    %al,(%eax)
   135b9:	00 00                	add    %al,(%eax)
   135bb:	00 6b 00             	add    %ch,0x0(%ebx)
   135be:	00 00                	add    %al,(%eax)
   135c0:	4b                   	dec    %ebx
   135c1:	00 00                	add    %al,(%eax)
   135c3:	00 00                	add    %al,(%eax)
   135c5:	00 00                	add    %al,(%eax)
   135c7:	00 6c 00 00          	add    %ch,0x0(%eax,%eax,1)
   135cb:	00 4c 00 00          	add    %cl,0x0(%eax,%eax,1)
   135cf:	00 00                	add    %al,(%eax)
   135d1:	00 00                	add    %al,(%eax)
   135d3:	00 3b                	add    %bh,(%ebx)
   135d5:	00 00                	add    %al,(%eax)
   135d7:	00 3a                	add    %bh,(%edx)
   135d9:	00 00                	add    %al,(%eax)
   135db:	00 00                	add    %al,(%eax)
   135dd:	00 00                	add    %al,(%eax)
   135df:	00 27                	add    %ah,(%edi)
   135e1:	00 00                	add    %al,(%eax)
   135e3:	00 22                	add    %ah,(%edx)
   135e5:	00 00                	add    %al,(%eax)
   135e7:	00 00                	add    %al,(%eax)
   135e9:	00 00                	add    %al,(%eax)
   135eb:	00 60 00             	add    %ah,0x0(%eax)
   135ee:	00 00                	add    %al,(%eax)
   135f0:	7e 00                	jle    135f2 <keymap+0x1f2>
   135f2:	00 00                	add    %al,(%eax)
   135f4:	00 00                	add    %al,(%eax)
   135f6:	00 00                	add    %al,(%eax)
   135f8:	08 01                	or     %al,(%ecx)
   135fa:	00 00                	add    %al,(%eax)
   135fc:	08 01                	or     %al,(%ecx)
   135fe:	00 00                	add    %al,(%eax)
   13600:	00 00                	add    %al,(%eax)
   13602:	00 00                	add    %al,(%eax)
   13604:	5c                   	pop    %esp
   13605:	00 00                	add    %al,(%eax)
   13607:	00 7c 00 00          	add    %bh,0x0(%eax,%eax,1)
   1360b:	00 00                	add    %al,(%eax)
   1360d:	00 00                	add    %al,(%eax)
   1360f:	00 7a 00             	add    %bh,0x0(%edx)
   13612:	00 00                	add    %al,(%eax)
   13614:	5a                   	pop    %edx
   13615:	00 00                	add    %al,(%eax)
   13617:	00 00                	add    %al,(%eax)
   13619:	00 00                	add    %al,(%eax)
   1361b:	00 78 00             	add    %bh,0x0(%eax)
   1361e:	00 00                	add    %al,(%eax)
   13620:	58                   	pop    %eax
   13621:	00 00                	add    %al,(%eax)
   13623:	00 00                	add    %al,(%eax)
   13625:	00 00                	add    %al,(%eax)
   13627:	00 63 00             	add    %ah,0x0(%ebx)
   1362a:	00 00                	add    %al,(%eax)
   1362c:	43                   	inc    %ebx
   1362d:	00 00                	add    %al,(%eax)
   1362f:	00 00                	add    %al,(%eax)
   13631:	00 00                	add    %al,(%eax)
   13633:	00 76 00             	add    %dh,0x0(%esi)
   13636:	00 00                	add    %al,(%eax)
   13638:	56                   	push   %esi
   13639:	00 00                	add    %al,(%eax)
   1363b:	00 00                	add    %al,(%eax)
   1363d:	00 00                	add    %al,(%eax)
   1363f:	00 62 00             	add    %ah,0x0(%edx)
   13642:	00 00                	add    %al,(%eax)
   13644:	42                   	inc    %edx
   13645:	00 00                	add    %al,(%eax)
   13647:	00 00                	add    %al,(%eax)
   13649:	00 00                	add    %al,(%eax)
   1364b:	00 6e 00             	add    %ch,0x0(%esi)
   1364e:	00 00                	add    %al,(%eax)
   13650:	4e                   	dec    %esi
   13651:	00 00                	add    %al,(%eax)
   13653:	00 00                	add    %al,(%eax)
   13655:	00 00                	add    %al,(%eax)
   13657:	00 6d 00             	add    %ch,0x0(%ebp)
   1365a:	00 00                	add    %al,(%eax)
   1365c:	4d                   	dec    %ebp
   1365d:	00 00                	add    %al,(%eax)
   1365f:	00 00                	add    %al,(%eax)
   13661:	00 00                	add    %al,(%eax)
   13663:	00 2c 00             	add    %ch,(%eax,%eax,1)
   13666:	00 00                	add    %al,(%eax)
   13668:	3c 00                	cmp    $0x0,%al
   1366a:	00 00                	add    %al,(%eax)
   1366c:	00 00                	add    %al,(%eax)
   1366e:	00 00                	add    %al,(%eax)
   13670:	2e 00 00             	add    %al,%cs:(%eax)
   13673:	00 3e                	add    %bh,(%esi)
   13675:	00 00                	add    %al,(%eax)
   13677:	00 00                	add    %al,(%eax)
   13679:	00 00                	add    %al,(%eax)
   1367b:	00 2f                	add    %ch,(%edi)
   1367d:	00 00                	add    %al,(%eax)
   1367f:	00 3f                	add    %bh,(%edi)
   13681:	00 00                	add    %al,(%eax)
   13683:	00 2c 01             	add    %ch,(%ecx,%eax,1)
   13686:	00 00                	add    %al,(%eax)
   13688:	09 01                	or     %eax,(%ecx)
   1368a:	00 00                	add    %al,(%eax)
   1368c:	09 01                	or     %eax,(%ecx)
   1368e:	00 00                	add    %al,(%eax)
   13690:	00 00                	add    %al,(%eax)
   13692:	00 00                	add    %al,(%eax)
   13694:	2a 00                	sub    (%eax),%al
   13696:	00 00                	add    %al,(%eax)
   13698:	2a 00                	sub    (%eax),%al
   1369a:	00 00                	add    %al,(%eax)
   1369c:	00 00                	add    %al,(%eax)
   1369e:	00 00                	add    %al,(%eax)
   136a0:	0c 01                	or     $0x1,%al
   136a2:	00 00                	add    %al,(%eax)
   136a4:	0c 01                	or     $0x1,%al
   136a6:	00 00                	add    %al,(%eax)
   136a8:	0d 01 00 00 20       	or     $0x20000001,%eax
   136ad:	00 00                	add    %al,(%eax)
   136af:	00 20                	add    %ah,(%eax)
   136b1:	00 00                	add    %al,(%eax)
   136b3:	00 00                	add    %al,(%eax)
   136b5:	00 00                	add    %al,(%eax)
   136b7:	00 0e                	add    %cl,(%esi)
   136b9:	01 00                	add    %eax,(%eax)
   136bb:	00 0e                	add    %cl,(%esi)
   136bd:	01 00                	add    %eax,(%eax)
   136bf:	00 00                	add    %al,(%eax)
   136c1:	00 00                	add    %al,(%eax)
   136c3:	00 11                	add    %dl,(%ecx)
   136c5:	01 00                	add    %eax,(%eax)
   136c7:	00 11                	add    %dl,(%ecx)
   136c9:	01 00                	add    %eax,(%eax)
   136cb:	00 00                	add    %al,(%eax)
   136cd:	00 00                	add    %al,(%eax)
   136cf:	00 12                	add    %dl,(%edx)
   136d1:	01 00                	add    %eax,(%eax)
   136d3:	00 12                	add    %dl,(%edx)
   136d5:	01 00                	add    %eax,(%eax)
   136d7:	00 00                	add    %al,(%eax)
   136d9:	00 00                	add    %al,(%eax)
   136db:	00 13                	add    %dl,(%ebx)
   136dd:	01 00                	add    %eax,(%eax)
   136df:	00 13                	add    %dl,(%ebx)
   136e1:	01 00                	add    %eax,(%eax)
   136e3:	00 00                	add    %al,(%eax)
   136e5:	00 00                	add    %al,(%eax)
   136e7:	00 14 01             	add    %dl,(%ecx,%eax,1)
   136ea:	00 00                	add    %al,(%eax)
   136ec:	14 01                	adc    $0x1,%al
   136ee:	00 00                	add    %al,(%eax)
   136f0:	00 00                	add    %al,(%eax)
   136f2:	00 00                	add    %al,(%eax)
   136f4:	15 01 00 00 15       	adc    $0x15000001,%eax
   136f9:	01 00                	add    %eax,(%eax)
   136fb:	00 00                	add    %al,(%eax)
   136fd:	00 00                	add    %al,(%eax)
   136ff:	00 16                	add    %dl,(%esi)
   13701:	01 00                	add    %eax,(%eax)
   13703:	00 16                	add    %dl,(%esi)
   13705:	01 00                	add    %eax,(%eax)
   13707:	00 00                	add    %al,(%eax)
   13709:	00 00                	add    %al,(%eax)
   1370b:	00 17                	add    %dl,(%edi)
   1370d:	01 00                	add    %eax,(%eax)
   1370f:	00 17                	add    %dl,(%edi)
   13711:	01 00                	add    %eax,(%eax)
   13713:	00 00                	add    %al,(%eax)
   13715:	00 00                	add    %al,(%eax)
   13717:	00 18                	add    %bl,(%eax)
   13719:	01 00                	add    %eax,(%eax)
   1371b:	00 18                	add    %bl,(%eax)
   1371d:	01 00                	add    %eax,(%eax)
   1371f:	00 00                	add    %al,(%eax)
   13721:	00 00                	add    %al,(%eax)
   13723:	00 19                	add    %bl,(%ecx)
   13725:	01 00                	add    %eax,(%eax)
   13727:	00 19                	add    %bl,(%ecx)
   13729:	01 00                	add    %eax,(%eax)
   1372b:	00 00                	add    %al,(%eax)
   1372d:	00 00                	add    %al,(%eax)
   1372f:	00 1a                	add    %bl,(%edx)
   13731:	01 00                	add    %eax,(%eax)
   13733:	00 1a                	add    %bl,(%edx)
   13735:	01 00                	add    %eax,(%eax)
   13737:	00 00                	add    %al,(%eax)
   13739:	00 00                	add    %al,(%eax)
   1373b:	00 0f                	add    %cl,(%edi)
   1373d:	01 00                	add    %eax,(%eax)
   1373f:	00 0f                	add    %cl,(%edi)
   13741:	01 00                	add    %eax,(%eax)
   13743:	00 00                	add    %al,(%eax)
   13745:	00 00                	add    %al,(%eax)
   13747:	00 10                	add    %dl,(%eax)
   13749:	01 00                	add    %eax,(%eax)
   1374b:	00 10                	add    %dl,(%eax)
   1374d:	01 00                	add    %eax,(%eax)
   1374f:	00 00                	add    %al,(%eax)
   13751:	00 00                	add    %al,(%eax)
   13753:	00 39                	add    %bh,(%ecx)
   13755:	01 00                	add    %eax,(%eax)
   13757:	00 37                	add    %dh,(%edi)
   13759:	00 00                	add    %al,(%eax)
   1375b:	00 21                	add    %ah,(%ecx)
   1375d:	01 00                	add    %eax,(%eax)
   1375f:	00 3a                	add    %bh,(%edx)
   13761:	01 00                	add    %eax,(%eax)
   13763:	00 38                	add    %bh,(%eax)
   13765:	00 00                	add    %al,(%eax)
   13767:	00 25 01 00 00 3b    	add    %ah,0x3b000001
   1376d:	01 00                	add    %eax,(%eax)
   1376f:	00 39                	add    %bh,(%ecx)
   13771:	00 00                	add    %al,(%eax)
   13773:	00 23                	add    %ah,(%ebx)
   13775:	01 00                	add    %eax,(%eax)
   13777:	00 2e                	add    %ch,(%esi)
   13779:	01 00                	add    %eax,(%eax)
   1377b:	00 2d 00 00 00 00    	add    %ch,0x0
   13781:	00 00                	add    %al,(%eax)
   13783:	00 36                	add    %dh,(%esi)
   13785:	01 00                	add    %eax,(%eax)
   13787:	00 34 00             	add    %dh,(%eax,%eax,1)
   1378a:	00 00                	add    %al,(%eax)
   1378c:	27                   	daa    
   1378d:	01 00                	add    %eax,(%eax)
   1378f:	00 37                	add    %dh,(%edi)
   13791:	01 00                	add    %eax,(%eax)
   13793:	00 35 00 00 00 00    	add    %dh,0x0
   13799:	00 00                	add    %al,(%eax)
   1379b:	00 38                	add    %bh,(%eax)
   1379d:	01 00                	add    %eax,(%eax)
   1379f:	00 36                	add    %dh,(%esi)
   137a1:	00 00                	add    %al,(%eax)
   137a3:	00 28                	add    %ch,(%eax)
   137a5:	01 00                	add    %eax,(%eax)
   137a7:	00 2f                	add    %ch,(%edi)
   137a9:	01 00                	add    %eax,(%eax)
   137ab:	00 2b                	add    %ch,(%ebx)
   137ad:	00 00                	add    %al,(%eax)
   137af:	00 00                	add    %al,(%eax)
   137b1:	00 00                	add    %al,(%eax)
   137b3:	00 33                	add    %dh,(%ebx)
   137b5:	01 00                	add    %eax,(%eax)
   137b7:	00 31                	add    %dh,(%ecx)
   137b9:	00 00                	add    %al,(%eax)
   137bb:	00 22                	add    %ah,(%edx)
   137bd:	01 00                	add    %eax,(%eax)
   137bf:	00 34 01             	add    %dh,(%ecx,%eax,1)
   137c2:	00 00                	add    %al,(%eax)
   137c4:	32 00                	xor    (%eax),%al
   137c6:	00 00                	add    %al,(%eax)
   137c8:	26 01 00             	add    %eax,%es:(%eax)
   137cb:	00 35 01 00 00 33    	add    %dh,0x33000001
   137d1:	00 00                	add    %al,(%eax)
   137d3:	00 24 01             	add    %ah,(%ecx,%eax,1)
   137d6:	00 00                	add    %al,(%eax)
   137d8:	32 01                	xor    (%ecx),%al
   137da:	00 00                	add    %al,(%eax)
   137dc:	30 00                	xor    %al,(%eax)
   137de:	00 00                	add    %al,(%eax)
   137e0:	1f                   	pop    %ds
   137e1:	01 00                	add    %eax,(%eax)
   137e3:	00 31                	add    %dh,(%ecx)
   137e5:	01 00                	add    %eax,(%eax)
   137e7:	00 2e                	add    %ch,(%esi)
   137e9:	00 00                	add    %al,(%eax)
   137eb:	00 20                	add    %ah,(%eax)
   137ed:	01 00                	add    %eax,(%eax)
	...
   13813:	00 1b                	add    %bl,(%ebx)
   13815:	01 00                	add    %eax,(%eax)
   13817:	00 1b                	add    %bl,(%ebx)
   13819:	01 00                	add    %eax,(%eax)
   1381b:	00 00                	add    %al,(%eax)
   1381d:	00 00                	add    %al,(%eax)
   1381f:	00 1c 01             	add    %bl,(%ecx,%eax,1)
   13822:	00 00                	add    %al,(%eax)
   13824:	1c 01                	sbb    $0x1,%al
	...
   1384a:	00 00                	add    %al,(%eax)
   1384c:	05 01 00 00 00       	add    $0x1,%eax
   13851:	00 00                	add    %al,(%eax)
   13853:	00 00                	add    %al,(%eax)
   13855:	00 00                	add    %al,(%eax)
   13857:	00 06                	add    %al,(%esi)
   13859:	01 00                	add    %eax,(%eax)
	...
   13863:	00 07                	add    %al,(%edi)
   13865:	01 00                	add    %eax,(%eax)
	...

00013a00 <sep.1631>:
   13a00:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a05:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a0a:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a0f:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a14:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a19:	2d 2d 2d 2d 2d       	sub    $0x2d2d2d2d,%eax
   13a1e:	2d 2d 0a 00 00       	sub    $0xa2d,%eax
	...

Disassembly of section .bss:

00013a40 <StackSpace>:
	...

00014240 <StackTop>:
	...

00014440 <graph_idx.1598>:
   14440:	00 00                	add    %al,(%eax)
	...

00014444 <pos.1549>:
   14444:	00 00                	add    %al,(%eax)
	...

00014448 <free_mem_size>:
	...

00014460 <hd_status>:
	...

00014480 <hdbuf>:
	...

00014880 <hd_info>:
	...

00014ac0 <blk_dev_table>:
	...

00014b00 <kb_in>:
	...

00014b2c <code_with_E0>:
   14b2c:	00 00                	add    %al,(%eax)
	...

00014b30 <shift_l>:
   14b30:	00 00                	add    %al,(%eax)
	...

00014b34 <shift_r>:
   14b34:	00 00                	add    %al,(%eax)
	...

00014b38 <alt_l>:
   14b38:	00 00                	add    %al,(%eax)
	...

00014b3c <alt_r>:
   14b3c:	00 00                	add    %al,(%eax)
	...

00014b40 <ctrl_l>:
   14b40:	00 00                	add    %al,(%eax)
	...

00014b44 <ctrl_r>:
   14b44:	00 00                	add    %al,(%eax)
	...

00014b48 <caps_lock>:
   14b48:	00 00                	add    %al,(%eax)
	...

00014b4c <num_lock>:
   14b4c:	00 00                	add    %al,(%eax)
	...

00014b50 <scroll_lock>:
   14b50:	00 00                	add    %al,(%eax)
	...

00014b54 <column>:
	...

00014b60 <rd_length>:
   14b60:	00 00                	add    %al,(%eax)
	...

00014b64 <idt_ptr>:
	...

00014b80 <inode_table>:
	...

00015680 <task_stack>:
	...

0004d680 <errno>:
   4d680:	00 00                	add    %al,(%eax)
	...

0004d684 <mem_start>:
   4d684:	00 00                	add    %al,(%eax)
	...

0004d688 <k_reenter>:
   4d688:	00 00                	add    %al,(%eax)
	...

0004d68c <buffer_base>:
	...

0004d6a0 <gdt>:
	...

0004daa0 <current_console>:
   4daa0:	00 00                	add    %al,(%eax)
	...

0004daa4 <pcaller>:
	...

0004dac0 <tty_table>:
	...

0004e794 <buffer_length>:
	...

0004e7a0 <tss>:
	...

0004e820 <fs_msg>:
	...

0004e850 <memory_size>:
	...

0004e860 <f_desc_table>:
	...

0004ed60 <root_inode>:
   4ed60:	00 00                	add    %al,(%eax)
	...

0004ed64 <current>:
   4ed64:	00 00                	add    %al,(%eax)
	...

0004ed68 <disp_pos>:
	...

0004ed80 <mm_msg>:
	...

0004edb0 <key_pressed>:
	...

0004edc0 <buffer_table>:
	...

000501d4 <gdt_ptr>:
	...

000501dc <kernel_addr>:
   501dc:	00 00                	add    %al,(%eax)
	...

000501e0 <jiffies>:
	...

00050200 <idt>:
	...

00050a00 <super_block>:
	...

00050be0 <console_table>:
	...

00050c60 <rd_base>:
	...

00050c80 <irq_table>:
	...

00050cc0 <proc_table>:
	...

0005939c <nr_buffer>:
   5939c:	00 00                	add    %al,(%eax)
	...

000593a0 <PARTITION_ENTRY>:
	...

000593b0 <reply>:
	...

000593b8 <drive_type>:
	...

Disassembly of section .comment:

00000000 <.comment>:
   0:	00 54 68 65          	add    %dl,0x65(%eax,%ebp,2)
   4:	20 4e 65             	and    %cl,0x65(%esi)
   7:	74 77                	je     80 <glitter.line_width+0x30>
   9:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
  10:	65 
  11:	6d                   	insl   (%dx),%es:(%edi)
  12:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
  16:	20 32                	and    %dh,(%edx)
  18:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
  1f:	00 47 43             	add    %al,0x43(%edi)
  22:	43                   	inc    %ebx
  23:	3a 20                	cmp    (%eax),%ah
  25:	28 55 62             	sub    %dl,0x62(%ebp)
  28:	75 6e                	jne    98 <INT_VECTOR_SYS_CALL+0x8>
  2a:	74 75                	je     a1 <INT_S_CTLMASK>
  2c:	2f                   	das    
  2d:	4c                   	dec    %esp
  2e:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
  35:	2e                   	cs
  36:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
  3b:	75 62                	jne    9f <INT_VECTOR_SYS_CALL+0xf>
  3d:	75 6e                	jne    ad <INT_S_CTLMASK+0xc>
  3f:	74 75                	je     b6 <INT_S_CTLMASK+0x15>
  41:	34 29                	xor    $0x29,%al
  43:	20 34 2e             	and    %dh,(%esi,%ebp,1)
  46:	35 2e 32 00 00       	xor    $0x322e,%eax
  4b:	47                   	inc    %edi
  4c:	43                   	inc    %ebx
  4d:	43                   	inc    %ebx
  4e:	3a 20                	cmp    (%eax),%ah
  50:	28 55 62             	sub    %dl,0x62(%ebp)
  53:	75 6e                	jne    c3 <INT_S_CTLMASK+0x22>
  55:	74 75                	je     cc <INT_S_CTLMASK+0x2b>
  57:	2f                   	das    
  58:	4c                   	dec    %esp
  59:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
  60:	2e                   	cs
  61:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
  66:	75 62                	jne    ca <INT_S_CTLMASK+0x29>
  68:	75 6e                	jne    d8 <INT_S_CTLMASK+0x37>
  6a:	74 75                	je     e1 <INT_S_CTLMASK+0x40>
  6c:	34 29                	xor    $0x29,%al
  6e:	20 34 2e             	and    %dh,(%esi,%ebp,1)
  71:	35 2e 32 00 00       	xor    $0x322e,%eax
  76:	47                   	inc    %edi
  77:	43                   	inc    %ebx
  78:	43                   	inc    %ebx
  79:	3a 20                	cmp    (%eax),%ah
  7b:	28 55 62             	sub    %dl,0x62(%ebp)
  7e:	75 6e                	jne    ee <INT_S_CTLMASK+0x4d>
  80:	74 75                	je     f7 <INT_S_CTLMASK+0x56>
  82:	2f                   	das    
  83:	4c                   	dec    %esp
  84:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
  8b:	2e                   	cs
  8c:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
  91:	75 62                	jne    f5 <INT_S_CTLMASK+0x54>
  93:	75 6e                	jne    103 <INT_S_CTLMASK+0x62>
  95:	74 75                	je     10c <INT_S_CTLMASK+0x6b>
  97:	34 29                	xor    $0x29,%al
  99:	20 34 2e             	and    %dh,(%esi,%ebp,1)
  9c:	35 2e 32 00 00       	xor    $0x322e,%eax
  a1:	47                   	inc    %edi
  a2:	43                   	inc    %ebx
  a3:	43                   	inc    %ebx
  a4:	3a 20                	cmp    (%eax),%ah
  a6:	28 55 62             	sub    %dl,0x62(%ebp)
  a9:	75 6e                	jne    119 <INT_S_CTLMASK+0x78>
  ab:	74 75                	je     122 <INT_S_CTLMASK+0x81>
  ad:	2f                   	das    
  ae:	4c                   	dec    %esp
  af:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
  b6:	2e                   	cs
  b7:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
  bc:	75 62                	jne    120 <INT_S_CTLMASK+0x7f>
  be:	75 6e                	jne    12e <INT_S_CTLMASK+0x8d>
  c0:	74 75                	je     137 <INT_S_CTLMASK+0x96>
  c2:	34 29                	xor    $0x29,%al
  c4:	20 34 2e             	and    %dh,(%esi,%ebp,1)
  c7:	35 2e 32 00 00       	xor    $0x322e,%eax
  cc:	47                   	inc    %edi
  cd:	43                   	inc    %ebx
  ce:	43                   	inc    %ebx
  cf:	3a 20                	cmp    (%eax),%ah
  d1:	28 55 62             	sub    %dl,0x62(%ebp)
  d4:	75 6e                	jne    144 <INT_S_CTLMASK+0xa3>
  d6:	74 75                	je     14d <INT_S_CTLMASK+0xac>
  d8:	2f                   	das    
  d9:	4c                   	dec    %esp
  da:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
  e1:	2e                   	cs
  e2:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
  e7:	75 62                	jne    14b <INT_S_CTLMASK+0xaa>
  e9:	75 6e                	jne    159 <INT_S_CTLMASK+0xb8>
  eb:	74 75                	je     162 <INT_S_CTLMASK+0xc1>
  ed:	34 29                	xor    $0x29,%al
  ef:	20 34 2e             	and    %dh,(%esi,%ebp,1)
  f2:	35 2e 32 00 00       	xor    $0x322e,%eax
  f7:	47                   	inc    %edi
  f8:	43                   	inc    %ebx
  f9:	43                   	inc    %ebx
  fa:	3a 20                	cmp    (%eax),%ah
  fc:	28 55 62             	sub    %dl,0x62(%ebp)
  ff:	75 6e                	jne    16f <INT_S_CTLMASK+0xce>
 101:	74 75                	je     178 <INT_S_CTLMASK+0xd7>
 103:	2f                   	das    
 104:	4c                   	dec    %esp
 105:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 10c:	2e                   	cs
 10d:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 112:	75 62                	jne    176 <INT_S_CTLMASK+0xd5>
 114:	75 6e                	jne    184 <INT_S_CTLMASK+0xe3>
 116:	74 75                	je     18d <INT_S_CTLMASK+0xec>
 118:	34 29                	xor    $0x29,%al
 11a:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 11d:	35 2e 32 00 00       	xor    $0x322e,%eax
 122:	47                   	inc    %edi
 123:	43                   	inc    %ebx
 124:	43                   	inc    %ebx
 125:	3a 20                	cmp    (%eax),%ah
 127:	28 55 62             	sub    %dl,0x62(%ebp)
 12a:	75 6e                	jne    19a <INT_S_CTLMASK+0xf9>
 12c:	74 75                	je     1a3 <INT_S_CTLMASK+0x102>
 12e:	2f                   	das    
 12f:	4c                   	dec    %esp
 130:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 137:	2e                   	cs
 138:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 13d:	75 62                	jne    1a1 <INT_S_CTLMASK+0x100>
 13f:	75 6e                	jne    1af <INT_S_CTLMASK+0x10e>
 141:	74 75                	je     1b8 <INT_S_CTLMASK+0x117>
 143:	34 29                	xor    $0x29,%al
 145:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 148:	35 2e 32 00 00       	xor    $0x322e,%eax
 14d:	47                   	inc    %edi
 14e:	43                   	inc    %ebx
 14f:	43                   	inc    %ebx
 150:	3a 20                	cmp    (%eax),%ah
 152:	28 55 62             	sub    %dl,0x62(%ebp)
 155:	75 6e                	jne    1c5 <INT_S_CTLMASK+0x124>
 157:	74 75                	je     1ce <INT_S_CTLMASK+0x12d>
 159:	2f                   	das    
 15a:	4c                   	dec    %esp
 15b:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 162:	2e                   	cs
 163:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 168:	75 62                	jne    1cc <INT_S_CTLMASK+0x12b>
 16a:	75 6e                	jne    1da <INT_S_CTLMASK+0x139>
 16c:	74 75                	je     1e3 <INT_S_CTLMASK+0x142>
 16e:	34 29                	xor    $0x29,%al
 170:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 173:	35 2e 32 00 00       	xor    $0x322e,%eax
 178:	54                   	push   %esp
 179:	68 65 20 4e 65       	push   $0x654e2065
 17e:	74 77                	je     1f7 <INT_S_CTLMASK+0x156>
 180:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
 187:	65 
 188:	6d                   	insl   (%dx),%es:(%edi)
 189:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
 18d:	20 32                	and    %dh,(%edx)
 18f:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
 196:	00 47 43             	add    %al,0x43(%edi)
 199:	43                   	inc    %ebx
 19a:	3a 20                	cmp    (%eax),%ah
 19c:	28 55 62             	sub    %dl,0x62(%ebp)
 19f:	75 6e                	jne    20f <INT_S_CTLMASK+0x16e>
 1a1:	74 75                	je     218 <INT_S_CTLMASK+0x177>
 1a3:	2f                   	das    
 1a4:	4c                   	dec    %esp
 1a5:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 1ac:	2e                   	cs
 1ad:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 1b2:	75 62                	jne    216 <INT_S_CTLMASK+0x175>
 1b4:	75 6e                	jne    224 <INT_S_CTLMASK+0x183>
 1b6:	74 75                	je     22d <INT_S_CTLMASK+0x18c>
 1b8:	34 29                	xor    $0x29,%al
 1ba:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 1bd:	35 2e 32 00 00       	xor    $0x322e,%eax
 1c2:	47                   	inc    %edi
 1c3:	43                   	inc    %ebx
 1c4:	43                   	inc    %ebx
 1c5:	3a 20                	cmp    (%eax),%ah
 1c7:	28 55 62             	sub    %dl,0x62(%ebp)
 1ca:	75 6e                	jne    23a <INT_S_CTLMASK+0x199>
 1cc:	74 75                	je     243 <INT_S_CTLMASK+0x1a2>
 1ce:	2f                   	das    
 1cf:	4c                   	dec    %esp
 1d0:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 1d7:	2e                   	cs
 1d8:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 1dd:	75 62                	jne    241 <INT_S_CTLMASK+0x1a0>
 1df:	75 6e                	jne    24f <INT_S_CTLMASK+0x1ae>
 1e1:	74 75                	je     258 <INT_S_CTLMASK+0x1b7>
 1e3:	34 29                	xor    $0x29,%al
 1e5:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 1e8:	35 2e 32 00 00       	xor    $0x322e,%eax
 1ed:	54                   	push   %esp
 1ee:	68 65 20 4e 65       	push   $0x654e2065
 1f3:	74 77                	je     26c <INT_S_CTLMASK+0x1cb>
 1f5:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
 1fc:	65 
 1fd:	6d                   	insl   (%dx),%es:(%edi)
 1fe:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
 202:	20 32                	and    %dh,(%edx)
 204:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
 20b:	47                   	inc    %edi
 20c:	43                   	inc    %ebx
 20d:	43                   	inc    %ebx
 20e:	3a 20                	cmp    (%eax),%ah
 210:	28 55 62             	sub    %dl,0x62(%ebp)
 213:	75 6e                	jne    283 <INT_S_CTLMASK+0x1e2>
 215:	74 75                	je     28c <INT_S_CTLMASK+0x1eb>
 217:	2f                   	das    
 218:	4c                   	dec    %esp
 219:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 220:	2e                   	cs
 221:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 226:	75 62                	jne    28a <INT_S_CTLMASK+0x1e9>
 228:	75 6e                	jne    298 <INT_S_CTLMASK+0x1f7>
 22a:	74 75                	je     2a1 <INT_S_CTLMASK+0x200>
 22c:	34 29                	xor    $0x29,%al
 22e:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 231:	35 2e 32 00 00       	xor    $0x322e,%eax
 236:	47                   	inc    %edi
 237:	43                   	inc    %ebx
 238:	43                   	inc    %ebx
 239:	3a 20                	cmp    (%eax),%ah
 23b:	28 55 62             	sub    %dl,0x62(%ebp)
 23e:	75 6e                	jne    2ae <INT_S_CTLMASK+0x20d>
 240:	74 75                	je     2b7 <INT_S_CTLMASK+0x216>
 242:	2f                   	das    
 243:	4c                   	dec    %esp
 244:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 24b:	2e                   	cs
 24c:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 251:	75 62                	jne    2b5 <INT_S_CTLMASK+0x214>
 253:	75 6e                	jne    2c3 <INT_S_CTLMASK+0x222>
 255:	74 75                	je     2cc <INT_S_CTLMASK+0x22b>
 257:	34 29                	xor    $0x29,%al
 259:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 25c:	35 2e 32 00 00       	xor    $0x322e,%eax
 261:	47                   	inc    %edi
 262:	43                   	inc    %ebx
 263:	43                   	inc    %ebx
 264:	3a 20                	cmp    (%eax),%ah
 266:	28 55 62             	sub    %dl,0x62(%ebp)
 269:	75 6e                	jne    2d9 <INT_S_CTLMASK+0x238>
 26b:	74 75                	je     2e2 <INT_S_CTLMASK+0x241>
 26d:	2f                   	das    
 26e:	4c                   	dec    %esp
 26f:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 276:	2e                   	cs
 277:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 27c:	75 62                	jne    2e0 <INT_S_CTLMASK+0x23f>
 27e:	75 6e                	jne    2ee <INT_S_CTLMASK+0x24d>
 280:	74 75                	je     2f7 <INT_S_CTLMASK+0x256>
 282:	34 29                	xor    $0x29,%al
 284:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 287:	35 2e 32 00 00       	xor    $0x322e,%eax
 28c:	47                   	inc    %edi
 28d:	43                   	inc    %ebx
 28e:	43                   	inc    %ebx
 28f:	3a 20                	cmp    (%eax),%ah
 291:	28 55 62             	sub    %dl,0x62(%ebp)
 294:	75 6e                	jne    304 <INT_S_CTLMASK+0x263>
 296:	74 75                	je     30d <INT_S_CTLMASK+0x26c>
 298:	2f                   	das    
 299:	4c                   	dec    %esp
 29a:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 2a1:	2e                   	cs
 2a2:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 2a7:	75 62                	jne    30b <INT_S_CTLMASK+0x26a>
 2a9:	75 6e                	jne    319 <INT_S_CTLMASK+0x278>
 2ab:	74 75                	je     322 <INT_S_CTLMASK+0x281>
 2ad:	34 29                	xor    $0x29,%al
 2af:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 2b2:	35 2e 32 00 00       	xor    $0x322e,%eax
 2b7:	54                   	push   %esp
 2b8:	68 65 20 4e 65       	push   $0x654e2065
 2bd:	74 77                	je     336 <INT_S_CTLMASK+0x295>
 2bf:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
 2c6:	65 
 2c7:	6d                   	insl   (%dx),%es:(%edi)
 2c8:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
 2cc:	20 32                	and    %dh,(%edx)
 2ce:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
 2d5:	00 47 43             	add    %al,0x43(%edi)
 2d8:	43                   	inc    %ebx
 2d9:	3a 20                	cmp    (%eax),%ah
 2db:	28 55 62             	sub    %dl,0x62(%ebp)
 2de:	75 6e                	jne    34e <INT_S_CTLMASK+0x2ad>
 2e0:	74 75                	je     357 <INT_S_CTLMASK+0x2b6>
 2e2:	2f                   	das    
 2e3:	4c                   	dec    %esp
 2e4:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 2eb:	2e                   	cs
 2ec:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 2f1:	75 62                	jne    355 <INT_S_CTLMASK+0x2b4>
 2f3:	75 6e                	jne    363 <INT_S_CTLMASK+0x2c2>
 2f5:	74 75                	je     36c <INT_S_CTLMASK+0x2cb>
 2f7:	34 29                	xor    $0x29,%al
 2f9:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 2fc:	35 2e 32 00 00       	xor    $0x322e,%eax
 301:	47                   	inc    %edi
 302:	43                   	inc    %ebx
 303:	43                   	inc    %ebx
 304:	3a 20                	cmp    (%eax),%ah
 306:	28 55 62             	sub    %dl,0x62(%ebp)
 309:	75 6e                	jne    379 <INT_S_CTLMASK+0x2d8>
 30b:	74 75                	je     382 <INT_S_CTLMASK+0x2e1>
 30d:	2f                   	das    
 30e:	4c                   	dec    %esp
 30f:	69 6e 61 72 6f 20 34 	imul   $0x34206f72,0x61(%esi),%ebp
 316:	2e                   	cs
 317:	35 2e 32 2d 38       	xor    $0x382d322e,%eax
 31c:	75 62                	jne    380 <INT_S_CTLMASK+0x2df>
 31e:	75 6e                	jne    38e <INT_S_CTLMASK+0x2ed>
 320:	74 75                	je     397 <INT_S_CTLMASK+0x2f6>
 322:	34 29                	xor    $0x29,%al
 324:	20 34 2e             	and    %dh,(%esi,%ebp,1)
 327:	35 2e 32 00 00       	xor    $0x322e,%eax
 32c:	54                   	push   %esp
 32d:	68 65 20 4e 65       	push   $0x654e2065
 332:	74 77                	je     3ab <INT_S_CTLMASK+0x30a>
 334:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
 33b:	65 
 33c:	6d                   	insl   (%dx),%es:(%edi)
 33d:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
 341:	20 32                	and    %dh,(%edx)
 343:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
 34a:	00 54 68 65          	add    %dl,0x65(%eax,%ebp,2)
 34e:	20 4e 65             	and    %cl,0x65(%esi)
 351:	74 77                	je     3ca <INT_S_CTLMASK+0x329>
 353:	69 64 65 20 41 73 73 	imul   $0x65737341,0x20(%ebp,%eiz,2),%esp
 35a:	65 
 35b:	6d                   	insl   (%dx),%es:(%edi)
 35c:	62 6c 65 72          	bound  %ebp,0x72(%ebp,%eiz,2)
 360:	20 32                	and    %dh,(%edx)
 362:	2e 30 35 2e 30 31 00 	xor    %dh,%cs:0x31302e
